Alors quelles sont les contraintes et comment fonctionnent-ils dans SQLite? Cet article est un guide complet sur les contraintes et sur la façon d'utiliser la contrainte de clé principale dans SQLite.
Quelles sont les contraintes de Sqlite
Les contraintes sont les principes, selon lesquels les données du même type de données sont insérées dans le tableau, il organise la structure de la colonne et assure également la fiabilité des données qui sont stockées dans le tableau. Il existe de nombreuses contraintes, certaines d'entre elles sont:
Quelle est la clé principale de Sqlite
Une clé primaire est la colonne unique du tableau, qui garantit que les entrées insérées dans la colonne doivent être uniques et sont également utilisées pour se référer à la clé étrangère d'autres tables. Le tableau peut être créé sans utiliser la clé primaire, mais si le tableau utilise la clé primaire, une seule clé principale peut être affectée au tableau. Les clés primaires sont très essentielles lors de la création d'une base de données qui contient une variété de tables et pour créer des relations entre les différentes bases de données, la clé principale est utilisée.
Une clé primaire doit suivre ces règles:
Une clé primaire ne peut pas être une valeur nulle dans les bases de données, mais dans le cas de SQLite, il peut se voir attribuer une valeur nulle, en raison de la «surveillance du codage de longue date».
Une table ne doit avoir qu'une seule clé primaire, mais plusieurs colonnes peuvent être définies dans une seule clé primaire, lorsque plusieurs colonnes sont utilisées comme une seule clé primaire, puis il est appelé une clé primaire composite.
Combien de façons d'ajouter une clé primaire à n'importe quelle table de SQLite
Il existe deux façons d'attribuer une clé primaire lors de la création d'une table, qui sont:
Comment créer un tableau affectant une clé primaire à une colonne dans SQLite
Nous pouvons créer une table en attribuant une clé primaire à une seule colonne, sa syntaxe générale sera:
Créer une table table_name (colonnel_name1L'explication de cette syntaxe est la suivante:
Pour le comprendre, considérons un exemple: nous créons un tableau des élèves de l'école, ayant les identifiants d'étudiants uniques, nommés (std_id), et les noms des élèves, nommés, (std_name). Dans ce tableau, les noms des élèves peuvent être les mêmes, mais les ID des étudiants ne peuvent pas être les mêmes, nous attribuons donc la clé principale à STD_ID que:
Créer une table Table School_students (std_id entier clé primaire non nul, std_names);Le tableau de l'école_students a été créé, ayant une seule colonne comme clé primaire.
Comment créer un tableau affectant une clé primaire à plusieurs colonnes dans SQLite
Nous pouvons créer une table en attribuant une clé primaire à plusieurs colonnes, sa syntaxe générale sera:
Créer une table table_name (colonnel_name1Dans la syntaxe ci-dessus, nous avons défini la clé primaire à la fin de l'instruction, avec les noms de la colonne entre parenthèses qui doivent être incluses dans la clé primaire.
Encore une fois pour comprendre cela, nous considérons un exemple d'une table Employés_data, nous le créerons avec trois colonnes qui sont EMP_ID, EMP_NAME et EMP_DEP, et après cela, nous attribuons EMP_ID et EMP_NAME comme clé principale:
Créer des employés de table_data (EMP_ID INTEGER, EMP_NAME Text, EMP_DEP Text, EMP_NAME Primary Key (EMP_ID, EMP_EMAIL));Le tableau a été créé avec la clé primaire ayant deux colonnes dedans.
Comment ajouter une clé primaire à la table existante dans SQLite
Nous ne pouvons pas ajouter une clé primaire à la table existante dans SQLite à l'aide de la clause alter, mais pour attribuer une clé primaire à une table dans SQLite, nous suivrons les étapes:
Nous avons une table dans une base de données, nommée Students_data, qui n'a pas de clé primaire et son contenu peut être affiché en utilisant:
SELECT * FROM Students_data;Pour attribuer «ID» une clé primaire, nous exécuterons les commandes suivantes:
Pragma étrangère_keys = off;Pour vérifier si la clé principale est affectée à la colonne nommée, ID, exécutez la commande:
Pragma table_info ([Students_data]);La clé principale a été affectée avec succès à la table Students_data.
Comment supprimer la contrainte de clé primaire dans sqlite
Comme d'autres bases de données, nous ne pouvons pas supprimer la contrainte en utilisant les commandes Drop and Alter, pour supprimer les contraintes de clé primaire, nous devons suivre la même procédure que nous optons pour ajouter la contrainte à un tableau existant et redéfinir la structure du tableau sans définir un primaire clé de n'importe quelle colonne. Considérons à nouveau l'exemple ci-dessus de l'ajout d'une clé primaire, et nous supprimons la clé primaire comme:
Pragma étrangère_keys = off;Conclusion
Une clé primaire est très utile surtout pour établir des relations d'un tableau avec les autres, car une clé étrangère fait toujours référence à la clé principale du tableau, en outre, un tableau n'a qu'une seule clé primaire, mais ses champs peuvent être un ou plusieurs. Dans cet article, nous avons discuté de la façon dont la clé primaire est utilisée dans SQLite et nous avons également discuté avec des exemples comment une clé primaire est affectée à une ou plusieurs colonnes ainsi qu'au tableau qui existe déjà sans clé primaire.