abdo78
Messages postés66Date d'inscriptionmercredi 6 février 2008StatutMembreDernière intervention27 novembre 2015
-
12 déc. 2011 à 10:26
abdo78
Messages postés66Date d'inscriptionmercredi 6 février 2008StatutMembreDernière intervention27 novembre 2015
-
13 déc. 2011 à 12:51
Bonjour,
je programme avec vb , je voulais faire une mis a jour d une table access , pour cela je dois enlever la clé primaire de 2 champ a la fois de cette table et la remette a la fin du mise a jour.
pour l' enlever j 'ai fais cette insruction :DBaseSté.Execute "ALTER TABLE MOUVEMENT DROP CONSTRAINT PrimaryKey et ça marche .
pour la remettre j'ai fais cette insruction :DBaseSté.Execute "ALTER TABLE MOUVEMENT ADD CONSTRAINT PrimaryKey PRIMARY KEY (Matricule,rub)" mais ça marche pas .
merci de votre aide
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 12 déc. 2011 à 11:37
Salut
Je trouve bizarre que tu aies besoin de toucher à ces clés primaires. Pour faire une mise à jour de données dans une table, pas besoin de faire ça.
Explique nous ton contexte, stp
"ça marche pas" n'est qu'une constatation, pas une explication.
Est-ce que la syntaxe SQL que tu te poses des questions ?
Quel type de DB ?
Car dans ce genre de syntaxe, c'est un élément très important puisque les différences de langages SQL se situent principalement dans les commandes liées aux structures.
Pourquoi "CONTRAINT PrimaryKey" ?
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
abdo78
Messages postés66Date d'inscriptionmercredi 6 février 2008StatutMembreDernière intervention27 novembre 2015 12 déc. 2011 à 15:26
la base de donné c est access.
je vous signale que ses pour les tables ou' il y seulement une clé primaire ça marche , le probleme c'est en cous ou' la table a 2 clé primaire , il me renvoi un message d erreur des doublons .
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 12 déc. 2011 à 16:03
As-tu essayé la même syntaxe mais sans préciser de contrainte ?
Es-tu sûr d'avoir un champ nommé "PrimaryKey" dans ta table ?
Or, dans la syntaxe de CONTRAINT, on ne peut pas ajouter plusieurs index à la fois (voir dans l'aide ou encore ici)
Je te conseille donc de faire deux passes :
- Une première passe pour désigner les clés primaires
- Une seconde passe (ou plus) pour demander l'indexation d'un champ
De mémoire, il me semble que les clés primaires sont, de toute façon, déjà indexées.
Si tu as un message de défaut, merci de nous dire lequel, mot pour mot.
"un message d erreur des doublons" n'est pas suffisant