English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Restrições do SQLite

Restrição - Regras aplicadas às colunas de dados da tabela. Essas são usadas para limitar os tipos de dados que podem ser inseridos na tabela. Isso garante a precisão e a confiabilidade dos dados no banco de dados.

As restrições podem ser de nível de coluna ou de tabela. As restrições de nível de coluna se aplicam apenas a uma coluna, enquanto as restrições de nível de tabela se aplicam a toda a tabela.

A seguir estão as restrições comuns disponíveis no SQLite.

  • NOT NULL Restrição - Garante que a coluna não possa ter valores NULL.

  • DEFAULT Restrição - Se não especificado, fornece um valor padrão para a coluna.

  • UNIQUE Restrição - Garante que todos os valores na coluna sejam diferentes.

  • Primary Key − Identifica de forma única cada linha na tabela do banco de dados./Registro.

  • CHECK Restrição - Garante que todos os valores na coluna atendam a certas condições.

Restrição NOT NULL

Por padrão, a coluna pode armazenar valores NULL. Se você não desejar que uma coluna tenha valores NULL,则需要在此列上定义 essa restrição para especificar que a coluna não permite NULL.

NULL é equivalente a não ter dados, representando dados desconhecidos.

Exemplo

Por exemplo, a seguinte instrução SQLite cria uma nova tabela chamada COMPANY e adiciona cinco colunas, das quais três (ID, NAME e AGE) especificam que não aceitam NULL.

CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);

Restrição DEFAULT

Quando a instrução INSERT INTO não fornece valores específicos, a restrição DEFAULT fornecerá valores padrão para a coluna.

Exemplo

Por exemplo, a seguinte instrução SQLite cria uma nova tabela chamada COMPANY e adiciona cinco colunas. Aqui, a coluna SALARY é configurada como padrão.5000.00,因此,如果INSERT INTO语句不为此列提供值,则默认情况下,此列将设置为5000.00,portanto, se a instrução INSERT INTO não fornecer um valor para essa coluna, por padrão, essa coluna será configurada como

CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   AGE            INT     NOT NULL UNIQUE, 5SALARY         REAL    DEFAULT
);

000.00。

Restrição UNIQUE

Exemplo

A restrição UNIQUE impede que dois registros tenham o mesmo valor em uma coluna específica. Por exemplo, na tabela COMPANY, você pode querer evitar que duas ou mais pessoas tenham a mesma idade.-

CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   Por exemplo, a seguir está a criação de uma nova tabela chamada COMPANY pelo SQLite e a adição de cinco colunas. Aqui, a coluna AGE é definida como UNIQUE, portanto, você não pode ter dois registros com a mesma idade.
   ADDRESS        CHAR(50),
   AGE            INT     NOT NULL UNIQUE, 5SALARY         REAL    DEFAULT
);

0000.00

Restrição PRIMARY Key

A restrição PRIMARY KEY identifica unicamente cada registro na tabela do banco de dados. Pode haver mais colunas UNIQUE, mas apenas uma chave primária na tabela. A chave primária é importante no design da tabela do banco de dados. É um ID único.

Nós usamos elas para referenciar linhas na tabela. Ao criar relações entre tabelas, a chave primária se torna a chave estrangeira em outras tabelas. Devido ao 'supervisão de codificação a longo prazo', a chave primária no SQLite pode ser NULL. Outros bancos de dados não são assim./A chave primária é um campo na tabela que identifica unicamente cada linha na tabela do banco de dados

registros. A chave primária deve conter valores únicos. As colunas da chave primária não podem ter valores NULL.Uma tabela pode ter apenas uma chave primária, que pode ser composta por um ou mais campos. Quando vários campos são usados como chave primária, eles são chamados dechave composta

Exemplo

Você já viu muitos exemplos acima, onde criamos a tabela COMPANY com ID como chave primária. Se uma tabela definir um(s) campo(s) de chave primária em outra tabela, não podem haver dois registros com o mesmo valor campo(s).

CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL
);

Restrição CHECK

A restrição CHECK permite que condições verifiquem os valores inseridos nos registros. Se o cálculo da condição resultar em false, o registro viola a restrição e não é inserido na tabela.

Exemplo

Por exemplo, a seguir está a criação de uma nova tabela chamada COMPANY pelo SQLite e a adição de cinco colunas. Aqui, adicionamos uma coluna CHECK com SALARY, portanto, você não pode ter nenhum SALARY 0.

CREATE TABLE COMPANY3(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   AGE            INT     NOT NULL,
   ADDRESS        CHAR(50),
   SALARY         REAL    CHECK(SALARY > 0)
);

Exclusão de Restrição

O SQLite suporta um subconjunto limitado de ALTER TABLE. O comando ALTER TABLE do SQLite permite que o usuário renomeie a tabela ou adicione novas colunas a uma tabela existente. Não é possível renomear colunas, excluir colunas ou adicionar ou excluir restrições na tabela.