Como usar a chave primária no sqlite

Como usar a chave primária no sqlite
O SQLite é um sistema de gerenciamento de banco de dados, usado para gerenciar os dados do banco de dados relacional, como o MySQL, ele também contém muitas restrições, como chave primária, chave primária e chave estrangeira, como outros bancos de dados.

Então, quais são as restrições e como elas funcionam no sqlite? Este artigo é um guia abrangente sobre restrições e sobre como usar a restrição de chave primária no SQLite.

Quais são as restrições em Sqlite

Restrições são os princípios, segundo os quais os dados do mesmo tipo de dados são inseridos na tabela, organiza a estrutura da coluna e também garante a confiabilidade dos dados que são armazenados na tabela. Existem muitas restrições, algumas delas são:

  • Chave primária
  • Chave estrangeira
  • Restrição única
  • Restrição padrão
  • Verifique a restrição

Qual é a chave primária no sqlite

Uma chave primária é a coluna exclusiva da tabela, que garante que as entradas inseridas na coluna sejam únicas e também são usadas para se referir à chave estrangeira de outras tabelas. A tabela pode ser criada sem usar a chave primária, mas se a tabela estiver usando a chave primária, apenas uma chave primária poderá ser atribuída à tabela. As chaves primárias são muito essenciais ao criar um banco de dados que possui uma variedade de tabelas e, para criar relacionamentos entre os diferentes bancos de dados, a chave primária é usada.

Uma chave primária deve seguir estas regras:

  • A coluna da chave primária não pode ser definida com o valor nulo
  • Os dados inseridos nas linhas da coluna da chave primária devem ser únicos
  • A chave primária deve ser chamada de chave estrangeira em particular de outra tabela
  • A tabela pode conter apenas uma chave primária

Uma chave primária não pode ser um valor nulo nos bancos de dados, mas no caso do sqlite, pode receber um valor nulo, devido à “supervisão de codificação de longa data”.

Uma tabela deve ter apenas uma chave primária, mas várias colunas podem ser definidas em uma única chave primária, quando várias colunas estão sendo usadas como uma única chave primária, é chamada de chave primária composta.

Quantas maneiras de adicionar uma chave primária a qualquer tabela em sqlite

Existem duas maneiras de atribuir uma chave primária ao criar uma tabela, que são:

  • Para a coluna única de uma tabela
  • Para as múltiplas colunas de uma tabela

Como criar uma tabela atribuindo uma chave primária para uma coluna no SQLITE

Podemos criar uma tabela atribuindo uma chave primária a uma única coluna, sua sintaxe geral será:

Criar tabela Table_name (column_name1 Chave primária não nula, column_name2 );

A explicação desta sintaxe é como:

  • A cláusula de tabela de criação é usada para criar uma tabela
  • Digite o nome da tabela em vez de tabela_name
  • Digite o nome da coluna em vez de column_name1 e também escreva seu tipo de dados
  • Use uma cláusula de chave primária, se você estiver atribuindo a coluna como uma chave primária e também a defina como nula ou não nula
  • Digite o nome Segunda coluna Substituindo column_name2

Para entender, considere um exemplo: criamos uma tabela de alunos da escola, com os IDs de estudantes exclusivos, nomeados (std_id) e nomes de estudantes, nomeados (std_name). Nesta tabela, os nomes dos alunos podem ser os mesmos, mas os IDs dos alunos não podem ser os mesmos, por isso atribuímos a chave primária para std_id como:

Criar tabela School_students (chave primária de std_id inteiro não nula, std_names);

A tabela de School_students foi criada, tendo uma única coluna como uma chave primária.

Como criar uma tabela atribuindo uma chave primária para várias colunas no SQLITE

Podemos criar uma tabela atribuindo uma chave primária para várias colunas, sua sintaxe geral será:

Criar tabela Table_name (column_name1 , column_name2 , column_name3 , Chave primária (column_name1, column_name2));

Na sintaxe acima, definimos a chave primária no final da declaração, com os nomes da coluna entre parênteses que devem ser incluídos na chave primária.

Novamente para entender isso, consideramos um exemplo de uma tabela funcionários_data, criaremos com três colunas que são EMP_ID, EMP_NAME e EMP_DEP, e depois disso atribuímos EMP_ID e EMP_NAME como uma chave primária:

Criar Tabela Funcionário_data (EMP_ID INTEGER, EMP_NAME TEXTO, EMP_DEP TEXT, CHAVE Primária EMP_NAME (EMP_ID, EMP_EMAIL));

A tabela foi criada com a chave primária com duas colunas.

Como adicionar uma chave primária à tabela existente em Sqlite

Não podemos adicionar uma chave primária à tabela existente no sqlite usando a cláusula Alter, mas para atribuir uma chave primária a uma tabela no sqlite, seguiremos as etapas:

  • A restrição de chave estrangeira deve ser verificada
  • Renomeie a tabela para algum outro nome
  • Crie uma nova tabela que tenha a mesma estrutura, que foi criada antes
  • Copie os dados dessa tabela para esta tabela
  • Exclua a tabela renomeada
  • No final, ligue as restrições de chave estrangeira

Temos uma tabela em um banco de dados, chamado Students_Data, que não possui chave primária e seu conteúdo pode ser exibido usando:

Selecione * de estudantes_data;

Para atribuir o "id" uma chave primária, executaremos os seguintes comandos:

PRAGMA FOREGN_KEYS = OFF;
Iniciar a transação;
Alter tabela estudantes_data renomear para new_students_data;
Criar tabela estudantes_data (ID inteiro não é a chave primária nula, o texto não nulo, o número inteiro de participação não é nulo);
Inserir em estudantes_data selecionar * de new_students_data;
Soltar tabela new_students_data;
COMPROMETER-SE;
PRAGMA FOREGN_KEYS = ON;

Para verificar se a chave primária é atribuída à coluna nomeada, ID, execute o comando:

PRAGMA TABLE_INFO ([estudantes_data]);

A chave primária foi atribuída com sucesso ao Table Students_Data.

Como excluir a restrição de chave primária no SQLite

Como outros bancos de dados, não podemos abandonar a restrição usando os comandos Drop e Alter, para excluir as principais restrições da chave, devemos seguir o mesmo procedimento que optamos por adicionar a restrição a uma tabela existente e redefinir a estrutura da tabela sem definir um primário Chave para qualquer coluna. Vamos considerar o exemplo acima novamente de adicionar uma chave primária e excluímos a chave primária como:

PRAGMA FOREGN_KEYS = OFF;
Iniciar a transação;
Alter tabela estudantes_data renomear para new_students_data;
Criar tabela alunos_data (ID inteiro não nulo, nome do texto não nulo, participação inteira não nula);
Inserir em estudantes_data selecionar * de new_students_data;
Soltar tabela new_students_data;
COMPROMETER-SE;
PRAGMA FOREGN_KEYS = ON;

Conclusão

Uma chave primária é muito útil, especialmente para estabelecer relacionamentos de uma tabela com outras pessoas, pois uma chave estrangeira sempre se refere à chave primária da tabela, além disso, uma tabela tem apenas uma chave primária, mas seus campos podem ser um ou mais de um. Neste artigo, discutimos como a chave primária é usada no sqlite e também discutimos com exemplos como uma chave primária é atribuída a uma ou mais colunas, bem como à tabela que já existe sem uma chave primária.