Home
Cloud
Big Data
CI
Install
Samples
Java
Ubuntu
Maven
Archive
Oracle
|
CONSTRAINT
Notes
Créer une contrainte
Créer une contrainte avec la syntaxe : CREATE TABLE
Créer une contrainte avec la syntaxe : ALTER TABLE
Afficher les contraintes d'une table
Désactiver une contrainte : DISABLE CONSTRAINT
Activer une contrainte : ENABLE CONSTRAINT
Supprimer une contrainte : DROP CONSTRAINT
Notes
PRIMARY KEY
(constraint type :
P
)
FOREIGN KEY
(constraint type :
R
)
UNIQUE
(constraint type :
U
)
CHECK
(constraint type :
C
)
Créer une contrainte
Créer une contrainte avec la syntaxe : CREATE TABLE
CREATE TABLE table_constraint_1 ( id NUMBER(1,0) NOT NULL -- NOT NULL , CONSTRAINT cp_table_constraint_1_id PRIMARY KEY (id) -- PRIMARY KEY , CONSTRAINT cc_table_constraint_1_id CHECK (id > 0 AND id < 100) -- CHECK );
CREATE TABLE table_constraint_2 ( id NUMBER(1,0) , CONSTRAINT cr_table_constraint_2_id FOREIGN KEY (id) REFERENCES table_constraint_1 (id) -- FOREIGN KEY , CONSTRAINT cu_table_constraint_2_id UNIQUE (id) -- UNIQUE );
Créer une contrainte avec la syntaxe : ALTER TABLE
ALTER TABLE table_constraint_2 ADD CONSTRAINT cc_table_constraint_2_id CHECK (id IS NOT NULL); -- CHECK
Afficher les contraintes d'une table
Afficher les contraintes de la table "
table_constraint_1
" :
SELECT constraint_name, constraint_type, generated, search_condition, index_name FROM user_constraints WHERE table_name = 'table_constraint_1';
Résultat de la requête :
+--------------------------+-----------------+----------------+---------------------+--------------------------+ | CONSTRAINT_NAME | CONSTRAINT_TYPE | GENERATED | SEARCH_CONDITION | INDEX_NAME | +--------------------------+-----------------+----------------+---------------------+--------------------------+ | SYS_C007078 | C | GENERATED NAME | "ID" IS NOT NULL | (null) | | CC_TABLE_CONSTRAINT_1_ID | C | USER NAME | ID > 0 AND ID < 100 | (null) | | CP_TABLE_CONSTRAINT_1_ID | P | USER NAME | (null) | CP_TABLE_CONSTRAINT_1_ID | +--------------------------+-----------------+----------------+---------------------+--------------------------+
Afficher les contraintes de la table "
table_constraint_2
" :
SELECT constraint_name, constraint_type, generated, search_condition, index_name FROM user_constraints WHERE table_name = 'table_constraint_2';
Résultat de la requête :
+--------------------------+-----------------+----------------+---------------------+--------------------------+ | CONSTRAINT_NAME | CONSTRAINT_TYPE | GENERATED | SEARCH_CONDITION | INDEX_NAME | +--------------------------+-----------------+----------------+---------------------+--------------------------+ | CU_TABLE_CONSTRAINT_2_ID | U | USER NAME | (null) | CU_TABLE_CONSTRAINT_2_ID | | CR_TABLE_CONSTRAINT_2_ID | R | USER NAME | (null) | (null) | | CC_TABLE_CONSTRAINT_2_ID | C | USER NAME | ID IS NOT NULL | (null) | +--------------------------+-----------------+----------------+---------------------+--------------------------+
Désactiver une contrainte : DISABLE CONSTRAINT
ALTER TABLE table_constraint_2 DISABLE CONSTRAINT cc_table_constraint_2_id;
Activer une contrainte : ENABLE CONSTRAINT
ALTER TABLE table_constraint_2 ENABLE CONSTRAINT cc_table_constraint_2_id;
Supprimer une contrainte : DROP CONSTRAINT
ALTER TABLE table_constraint_2 DROP CONSTRAINT cc_table_constraint_2_id;
© 2010-2022
mti
tek