Database Reference
In-Depth Information
La mise en œuvre des contraintes va s'opérer lors de la création des tables (ou ultérieurement),
la déclaration d'une contrainte lors de la création SQL peut être réalisée en ligne ( in line sur la
même ligne que la colonne de la table elle-même) ou hors ligne ( out of line ). Les principales
contraintes de SQL que vous avez à disposition sont :
UNIQUE ( colonne1 [, colonne2 ]...)
PRIMARY KEY ( colonne1 [, colonne2 ]...)
FOREIGN KEY ( colonne1 [, colonne2 ]...)
REFERENCES nom_table_parent ( colonne1 [, colonne2 ]...)
CHECK ( condition )
Une fois déinie et activée, une contrainte peut être désactivée ou supprimée. Dès qu'une
contrainte n'est pas respectée au cours du temps, une exception est levée et la transaction, dans
laquelle se trouve l'instruction qui concernait la table, est annulée.
L'outil que vous utiliserez éventuellement est capable de générer un script qui contiendra ces
deux types d'instruction.
CREATE TABLE [ nom _ schema. ] nom_table
( colonne _ 1 type _ 1 [NOT NULL] [DEFAULT valeur ],
[, colonne_2 ...]
[, CONSTRAINT nom_contrainte_1 type_contrainte_1 ...])
options physiques ;
ALTER TABLE [ nom _ schema. ] nom_table
ADD CONSTRAINT nom_contrainte type_contrainte ;
De plus, il faudrait signaler l'unicité des noms des objets à travers les schémas (tables,
contraintes…) et la possibilité d'avoir des doublons de noms sur les objets primaires des
bases si on les situe dans différents schémas.
D'autres instructions SQL peuvent aussi se trouver dans le script :
la création des index ( CREATE INDEX …) sur certaines colonnes (les clés étrangères en
principe) ;
la destruction des objets créés pour pouvoir relancer à la demande le script de création
( ALTER TABLE DROP CONSTRAINT …, DROP INDEX … et DROP TABLE …).
Afin.de.rendre.les.scripts.plus.clairs,.les.instructions.SQL.sont.notées.en. majuscules .et.les.
noms.d'objets.(tables,.colonnes.et.contraintes).apparaissent.en. minuscules .
 
Search WWH ::




Custom Search