Bonjour

Je dois vider certaines tables de ma base de données.
Mais cela ne fonctionne pas à cause des contraintes d'intégrités.

Avant de vouloir supprimer le contenu de la table j ai desactivé les contraintes avec ce script :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
nocheck :
select 'ALTER TABLE dbo.' + P.name + ' NOCHECK constraint ' + K.name + ';' 
from ANAELRHDTA.dbo.sysobjects as K , dbo.sysobjects As	P 
where K.xtype = 'F' and K.parent_obj = P.id
Je récupere les resultats et j'execute les requetes.

Ensuite je fais le truncate de ma table et les donnees ne se suppriment pas
Ensuite je remet les contraintes d'integrités avec ce script :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
check :
select 'ALTER TABLE dbo.' + P.name + ' CHECK constraint ' + K.name + ';' 
from ANAELRHDTA.dbo.sysobjects as K , dbo.sysobjects As	P 
where K.xtype = 'F' and K.parent_obj = P.id
J ai l impression que ces scripts n enlevent que les contraintes primaires et pas les contraintes etrangeres.

Quelqu un aurait une idee ?

Cordialement mEhO