Partie I
SQL de base
62
© Éditions Eyrolles
En résumé
Le tableau suivant résume les conditions requises pour modifier l’état de la base de données en
respectant l’intégrité référentielle :
Insertions à partir d’un fichier
L’importation de données (au format fichier texte) dans une table peut être programmée à
l’aide de la directive LOAD DATA INFILE. Un tel mécanisme lit un fichier dans un répertoire du serveur et insère tout ou partie des informations dans une table. La syntaxe simplifiée
de cette directive est la suivante :
LOAD DATA INFILE 'nomEtCheminFichier.txt'
[REPLACE | IGNORE] INTO TABLE nomTable
[FIELDS [TERMIATED BY 'string']
[[OPTIONALLY] ENCLOSED BY 'char']
[ESCAPED BY 'char' ] ]
[LINES [STARTING BY 'string'] [TERMINATED BY 'string'] ]
[IGNORE number LINES];
q
REPLACE : option à utiliser pour remplacer systématiquement les anciens enregistrements
par les nouveaux (valeur de clé primaire ou d’index unique).
q
IGNORE : fait en sorte de ne pas insérer des enregistrements de clé primaire ou d’index
unique déjà présents dans la table.
Tableau 2-17 Instructions SQL sur les clés
Instructions
Table « père »
Table « fils »
INSERT
Correcte si la clé primaire (ou candidate)
est unique.
Correcte si la clé étrangère est
référencée dans la table « père » ou
est nulle (partiellement ou en
totalité).
UPDATE
Correcte si l’instruction ne laisse pas
d’enregistrements dans la table « fils »
ayant une clé étrangère non référencée.
Correcte si la nouvelle clé étrangère
référence un enregistrement
« père » existant.
DELETE
Correcte si aucun enregistrement de la
table « fils » ne référence le ou les
enregistrements détruits.
Correcte sans condition.
DELETE Cascade
Correcte sans condition.
Sans objet.
DELETE SET NULL
Correcte sans condition.
Sans objet.
UPDATE Cascade
Correcte sans condition.
Sans objet.
UPDATE SET NULL
Correcte s’il n’y a pas de NOT NULL dans
la table « fils ».
Sans objet.
Précédent

- 84/418

Suivant