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

Contraintes SQLite

Contrainte - Régles imposées aux colonnes de données des tables pour limiter les types de données qui peuvent entrer dans la table. Cela assure l'exactitude et la fiabilité des données dans la base de données.

Les contraintes peuvent être au niveau de la colonne ou du tableau. Les contraintes de niveau colonne ne s'appliquent qu'à une seule colonne, tandis que les contraintes de niveau tableau s'appliquent à l'ensemble du tableau.

Voici les contraintes courantes disponibles dans SQLite.

  • NOT NULL Contrainte - Assure que la colonne ne peut pas être une valeur NULL.

  • DEFAULT Contrainte - Fournit une valeur par défaut pour la colonne si elle n'est pas spécifiée.

  • UNIQUE Contrainte - Assure que toutes les valeurs dans la colonne sont différentes.

  • Clé primaire − Identifie de manière unique chaque ligne dans la table de base de données./Enregistrement.

  • CHECK Contrainte - Assure que toutes les valeurs dans la colonne répondent à certaines conditions.

Contrainte NOT NULL

Par défaut, une colonne peut stocker des valeurs NULL. Si vous ne souhaitez pas que une colonne ait des valeurs NULL, vous devez définir cette contrainte sur cette colonne pour spécifier que cette colonne ne permet plus NULL.

NULL équivaut à une absence de données, il représente des données inconnues.

Exemple

Par exemple, la requête SQLite suivante crée une nouvelle table nommée COMPANY et ajoute cinq colonnes, dont trois (ID, NAME et AGE) ne permettent pas de NULL.

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

Contrainte DEFAULT

Lorsque la requête INSERT INTO ne fournit pas de valeurs spécifiques, la contrainte DEFAULT fournit une valeur par défaut pour la colonne.

Exemple

Par exemple, la requête SQLite suivante crée une nouvelle table nommée COMPANY et ajoute cinq colonnes. Ici, la colonne SALARY est définie par défaut.5000.00,因此,如果INSERT INTO语句不为此列提供值,则默认情况下,此列将设置为5000.00,par conséquent, si l'insertion INTO la phrase ne fournit pas de valeur pour cette colonne, par défaut, cette colonne sera définie comme

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。

Contrainte UNIQUE

Exemple

La contrainte UNIQUE empêche deux enregistrements d'avoir la même valeur dans une colonne spécifique. Par exemple, dans la table COMPANY, vous pourriez vouloir empêcher deux ou plusieurs personnes d'avoir la même âge.-

CREATE TABLE COMPANY(
   ID INT PRIMARY KEY     NOT NULL,
   NAME           TEXT    NOT NULL,
   Par exemple, la requête SQLite suivante crée une nouvelle table nommée COMPANY et ajoute cinq colonnes. Ici, la colonne AGE est définie comme UNIQUE, donc vous ne pouvez pas avoir deux enregistrements avec la même âge.
   ADDRESS        CHAR(50),
   AGE            INT     NOT NULL UNIQUE, 5SALARY         REAL    DEFAULT
);

0000.00

Contrainte PRIMARY Key

La contrainte PRIMARY KEY identifie unique chaque enregistrement dans la table de base de données. Il peut y avoir plus de colonnes UNIQUE, mais une seule clé primaire dans la table. La clé primaire est importante lors de la conception de la table de base de données. La clé primaire est un ID unique.

Nous les utilisons pour référencer les lignes de table. Lors de la création de relations entre tables, la clé primaire devient une clé étrangère dans d'autres tables. En raison de la 'surveillance à long terme du codage', la clé primaire dans SQLite peut être NULL. Les autres bases de données ne sont pas dans ce cas./La clé primaire est un champ dans la table qui identifie uniquement chaque ligne de la table de base de données

enregistrements. La clé primaire doit contenir des valeurs uniques. Les colonnes de la clé primaire ne peuvent pas contenir de valeurs NULL.Une table ne peut avoir qu'une seule clé primaire, qui peut être composée d'un ou plusieurs champs. Lorsque plusieurs champs sont utilisés comme clé primaire, ils sont appeléscomposite key

Exemple

Vous avez déjà vu de nombreux exemples ci-dessus, où nous avons créé une table COMPANY avec ID en tant que clé primaire. Si une table définit des champs primaire(s) sur une autre table, deux enregistrements ne peuvent pas avoir la même valeur(s) field(s).

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

Contrainte CHECK

Les contraintes CHECK permettent de vérifier les valeurs insérées dans les enregistrements. Si le calcul de la condition donne false, l'enregistrement enfreint la contrainte et n'est pas inséré dans le tableau.

Exemple

Par exemple, voici un exemple de SQLite créant une nouvelle table nommée COMPANY et ajoutant cinq colonnes. Ici, nous avons ajouté une colonne CHECK avec SALARY, donc vous ne pouvez pas avoir de 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)
);

Suppression de contraintes

SQLite supporte un sous-ensemble limité d'ALTER TABLE. La commande ALTER TABLE de SQLite permet à l'utilisateur de renommer une table ou d'ajouter de nouvelles colonnes à une table existante. Il n'est pas possible de renommer une colonne, de supprimer une colonne ou d'ajouter ou de supprimer des contraintes dans une table.