Desactiver les PK sous Sql server - SQL/NoSQL - Programmation
Marsh Posté le 31-01-2005 à 17:09:58
Réponse dans l'exemple "G" de la doc ALTER de SQL Server.
Après, pour le faire sur chaque PK, tu fais une boucle sur les lignes de "sysconstraints". Cherche un peu...
Hey faut lire les docs un peu, c'est relou à force
La doc entière de SQL Server va finir sur le forum à force que j'en fasse des copier/coller
Citation : |
Marsh Posté le 31-01-2005 à 17:24:37
Voilà pour retrouver la liste des PK et leur table associée dans les tables système :
Citation : |
Marsh Posté le 31-01-2005 à 17:29:12
Après, tu fais un curseur là-dessus, avec et un truc du genre :
declare @cmd varchar(255)
select @cmd = 'ALTER TABLE ' + @TableName + ' NOCHECK CONSTRAINT ' + @PKName
exec (@cmd)
Spa compliqué
Marsh Posté le 01-02-2005 à 10:46:14
merci arjuna mais je connaissais les tables systemes et j'ai lu la doc
le truc c'est que rien n'indique que cela ne marche pas mais c'est pourtant le cas
la syntaxe que tu me donnes est l'une des premieres que j'ai essaye ...
Marsh Posté le 01-02-2005 à 11:00:25
Tu m'étonnes grandement. Je peux pas faire de test
Sinon, tu génères avec entreprise manager le script de toutes les contraintes, puis tu les drop, et tu repasses le script quand tu doit les réactiver... C'est tout ce que je vois comme solution alternative...
Marsh Posté le 01-02-2005 à 11:14:29
bah ecoute ce n'est pas de la mauvaise volonté car ce probleme me saoul vraiment
et il affiche bien la ou les commandes se sont bien déroulées etc
mais quand j'ajoute des doublons dans ma base sur l'ancienne clé primaire il me jete a cause de la PK donc .. j'en conclus peut etre trop hativement que cela n'a pas marché
et oui c'est la solution que j'ai adopté drop et clé mais bon c'est pas glop sql server au risque de passer pour une relou prefere oracle
mais merci de ton aide
Marsh Posté le 01-02-2005 à 13:59:54
désactive peut-être aussi l'index unique.
sinon, dans ton post, tu parles de FK, et maintenant de PK. Dans la doc MSSQL , c'est pas du tout la même chose pour désactiver une PK et une FK...
Le code que j'ai posté désactive les FK, et pas du tout les PK...
Marsh Posté le 01-02-2005 à 14:01:05
Euh... Excuse-moi, j'ai confondu avec un autre topic, c'est bien de PK qu'on parle depuis le début
Regarde peut-être au niveau de l'index unique qui est créé en même temps que la PK. Car même s'il n'y a plus de PK, l'index va faire planter dans tous les cas (redondance des contraintes)
Marsh Posté le 28-01-2005 à 12:24:32
Bonjour a tous,
Est ce que quelqu'un sait comment desactiver les Primary Key sous Sql server, je ne souhaite pas les drop mais faire quelque chose dans le style de alter table X COnstraint with nocheck all mais juste pour les pk
Par avanc emerci
je rame