Outils pour utilisateurs

Outils du site


oracle_desactiver_toutes_les_contraintes_d_un_schema

tag_oracle_contraintes_schema_desactiver

Oracle - Désactiver toutes les contraintes d'un schéma

Lorsque l'on veut recharger des données avec DataPump par exemple, les contraintes peuvent poser problème car les nouvelles données ne les respectent pas.

Il est donc utile de désactiver toutes les contraintes d'un seul coup, et éventuellement de les réactiver ensuite.

Désactivation:

$ sqlplus / as sysdba
SET echo off
SET feedback off
SET pages 0
SET LINES 200
SET head off
spool disable_all_constraints.sql;
select 'alter table "' || owner || '"."' || table_name || '" disable constraint "' || constraint_name || '";'
from SYS.DBA_constraints where  owner = 'USER_SCHEMA';
spool off;
@disable_all_constraints.sql

Réactivation:

$ sqlplus / as sysdba
SET echo off
SET feedback off
SET pages 0
SET LINES 200
SET head off
spool enable_all_constraints.sql;
select 'alter table "' || owner || '"."' || table_name || '" enable constraint "' || constraint_name || '";'
from SYS.DBA_constraints where  owner = 'USER_SCHEMA';
spool off;
@enable_all_constraints.sql
oracle_desactiver_toutes_les_contraintes_d_un_schema.txt · Dernière modification: 14/10/2010 14:56 (modification externe)