web-dev-qa-db-fra.com

Ajouter des contraintes dans phpMyAdmin

J'ai l'impression d'être stupide, mais je ne trouve nulle part sur l'interface de phpMyAdmin d'ajouter des contraintes aux clés étrangères, par exemple. CASCADE SUR SUPPRIMER

J'ai cherché des questions similaires ici et sur le wiki phpMyAdmin mais je ne trouve rien à ce sujet.

Je me rends compte que je pourrais le faire via l'interface de requête, mais j'aimerais savoir comment le faire via l'interface graphique.

16
Alex

Premièrement, vous devriez avoir votre moteur de stockage en tant que InnoDB. Puis sélectionnez un tableau et allez dans l'onglet 'Structure'.

Sous le tableau, vous verrez la vue "Relation", cliquez dessus. De là, vous pouvez ajouter des contraintes.

31
utsikko

CASCADE

Chaque fois que des lignes de la table maître (référencée) sont supprimées (respectivement mises à jour), les lignes respectives de la table enfant (référençant) avec une colonne de clé étrangère correspondante sont également supprimées (ou mises à jour). Cela s'appelle une suppression en cascade (resp. Update [2]).

RESTREINDRE

Une valeur ne peut pas être mise à jour ou supprimée lorsqu'une ligne existe dans une table de clé étrangère qui référence la valeur dans la table référencée. De même, une ligne ne peut pas être supprimée tant qu'il y a une référence à partir d'une table de clé étrangère.

PAS D'ACTION

NO ACTION et RESTRICT sont très semblables. La principale différence entre NO ACTION et RESTRICT est que, avec NO ACTION, le contrôle d'intégrité référentielle est effectué après avoir tenté de modifier la table. RESTRICT effectue la vérification avant d'essayer d'exécuter l'instruction UPDATE ou DELETE. Les deux actions référentielles fonctionnent de la même manière si la vérification de l'intégrité référentielle échoue: l'instruction UPDATE ou DELETE entraîne une erreur.

SET NULL

Les valeurs de clé étrangère dans la ligne de référence sont définies sur NULL lorsque la ligne référencée est mise à jour ou supprimée. Cela n'est possible que si les colonnes respectives de la table de référence sont nullables. En raison de la sémantique de NULL, une ligne de référence avec des valeurs NULL dans les colonnes de clé étrangère ne nécessite pas de ligne référencée.

8
Arun Yokesh

Tout d'abord, vous devez choisir le moteur de stockage en tant que InnoDB.

Suivez cette méthode: cliquez sur nom_base_de_données -> Plus -> Designer 

0
umutekici