Précédent   Forum des professionnels en informatique > Bases de données > DB2
DB2 Forum d'entraide technique sur la base de données DB2. Voir aussi -> Rubrique DB2
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 28/01/2008, 10h46   #1
Membre du Club
 
Inscription : avril 2003
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 79
Points : 47
Points : 47
Par défaut rétablissement de l'intégrité

Bonjour,

je voulais savoir si il y a possibilité ou un script permettant de remetre l'intégerité de toutes les tables

pour générer des colones j'ai du metre l'intégrité sur off, mais en fait ça a mis en cascade l'intégrité sur off pour les tables dépendantes

select * from syscat.tables where status='C'

permet d'obtenir les tables qui sont en status checked

select * from syscat.tabdep

est censé donner la dépendance des vues, mais pour les tables entre elles je ne trouve pas pour l'instant

et le probleme c'est qu'il faut tout remetre dans l'ordre
mirak63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2008, 11h05   #2
Membre du Club
 
Inscription : avril 2003
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 79
Points : 47
Points : 47
ok j'y avais pas pensé avant, j'ai mis toutes les tables séparées par une virgule dans la commande et ça marche
mirak63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 28/01/2008, 17h00   #3
Membre du Club
 
Inscription : avril 2003
Messages : 79
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 79
Points : 47
Points : 47
Code :
1
2
3
4
5
6
7
8
9
10
WITH n(id) AS 
           (	SELECT tabname 
              FROM  syscat.REFERENCES 
              WHERE tabname = 'MATABLE'
            UNION ALL
            	SELECT nplus1.tabname 
              FROM syscat.REFERENCES AS nplus1, n
              WHERE n.id = nplus1.reftabname
						)
SELECT DISTINCT id FROM n;

et sinon cette requete permet de connaitre à l'avance toutes les tables dépendantes par contraintes et qui vont se mettre sur OFF par cascade

edit: hum le graph est bien parcouru par contre j'ai pas l'impression que ça me permete précisément d'obtenir toutes les tables qui se mettent en off en cascade ...


reédit: en fait je me suis trompé de sens , comme ça fonctionne
Code :
1
2
3
4
5
6
7
8
9
10
11
 
WITH n(id) AS 
           (	SELECT reftabname 
              FROM  syscat.REFERENCES 
              WHERE reftabname = 'MATABLE'
            UNION ALL
            	SELECT nplus1.tabname 
              FROM syscat.REFERENCES AS nplus1, n
              WHERE n.id = nplus1.reftabname
						)
SELECT DISTINCT id FROM n;
mirak63 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h40.


 
 
 
 
Partenaires

Hébergement Web