Salut je recherche un script permettant de desactiver un certains de nombre de primary key ainsi que les foreign key
Il s'agit de 53 tables si quelqu'un à début de solutions merci d'avance.
Salut je recherche un script permettant de desactiver un certains de nombre de primary key ainsi que les foreign key
Il s'agit de 53 tables si quelqu'un à début de solutions merci d'avance.
Bonjour
Conformement à la règle
>>> Pas d'indication de version, pas de réponse
Je vous invite à rapidement remedier à votre titre . Utilisez le Boutonen haut à droite du premier post ci dessus
Soyez rigoureux quant aux respects des règles du forum, elles vous garantissent également les réponses les plus appropriées à résoudre votre souci.
http://www.developpez.net/forums/viewtopic.php?t=309476
Je vous remercie de votre attention à maintenir le forum agréable et efficace.
Cordialement neguib![]()
Voila un debut de solution pour les PKs.
Essaye de completer les instructions qui manquent pour progresser.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 SPOOL script_de_deactivation.sql SET SERVEROUTPUT ON SIZE 1000000 DECLARE l_cr INTEGER; l_nb INTEGER; constraint_dropped EXCEPTION; index_organized_error EXCEPTION; PRAGMA exception_init(constraint_dropped , -02443); PRAGMA exception_init(index_organized_error , -25188); BEGIN l_cr := dbms_sql.open_cursor; FOR l_constraint IN (SELECT constraint_name ,table_name FROM user_constraints WHERE constraint_type = 'P') LOOP BEGIN dbms_output.put_line('Dropping PK '||l_constraint.constraint_name); dbms_sql.parse (l_cr, 'ALTER TABLE ' <a completer!>, dbms_sql.native); l_nb := dbms_sql.execute(l_cr); EXCEPTION WHEN constraint_dropped THEN dbms_output.put_line('PK '||l_constraint.constraint_name||' is already dropped'); WHEN index_organized_error THEN dbms_output.put_line('PK '||l_constraint.constraint_name||' cannot be dropped'); WHEN OTHERS THEN dbms_output.put_line('PK '||l_constraint.constraint_name||' cannot be dropped'); END; END LOOP; dbms_sql.close_cursor(l_cr); END; / SPOOL OFF
Partager