|
|
|
|
Microsoft Access a attribué la valeur Null à 0 champ(s) à la suite d'une erreur de conversion de type, 1996 enregistrement(s) n'ont pas été ajoutés à la table à la suite de violations de clé, 0 enregistrement(s) à la suite de violation de verrou et 0 enregistrement(s) à la suite de violations des règles de validation..... RIEN QUE CA ! !
Normal, tu essayes d'ajouter 1996 enregistrements qui existent déjà dans la table EBP (clé primaire déjà connue)... Mais une Box s ouvre pour que je puisse entrer une valeur à EBP.CODE ????? Normal aussi, EBP.CODE n'existe pas dans la table BRS... Essaye voir comme ça (sans garantie !) : INSERT INTO EBP ( CODE, LIBELLE, HT ) SELECT CODE, LIBELLE, HT FROM BRS, EBP WHERE BRS.HT>0 AND BRS.CODE<>EBP.CODE; A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait" |
Un message d'alerte s'affiche :
Le champ spécifié 'CODE' peut designer plusieurs tables listées dans la clause FROM de votre instruction SQL. Access ne semble pas tenir compte du nom de table dans "BRS.CODE<>EBP.CODE" |
Si, mais c'est dans la clause SELECT qu'il ne le voit pas : mets BRS.CODE, BRS.LIBELLE, BRS.HT...
A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait" |
La requete s'execute et il ne rajoute aucun produit dans ma table fournisseur : pourtant je venais juste de vider EBP : elle aurait du se remplir de la totalité des enregistrements de BRS, mais rien !
Voila la requete complete : INSERT INTO EBP ( CODE, LIBELLE, HT ) SELECT BRS.CODE, BRS.LIBELLE, BRS.HT FROM BRS, EBP WHERE BRS.HT>0 AND BRS.CODE<>EBP.CODE; Mais bon, j ai plus de message de d'erreur de conversion ni de violation ! hihihi PS : J ai essayé ça, mais ca marche encore moins : INSERT INTO EBP ( BRS.CODE, BRS.LIBELLE, BRS.HT ) SELECT BRS.CODE, BRS.LIBELLE, BRS.HT FROM BRS, EBP WHERE BRS.HT>0 AND BRS.CODE<>EBP.CODE; |
On peut essayer un truc bourrin, les requêtes imbriquées : INSERT INTO EBP ( CODE, LIBELLE, HT ) SELECT CODE, LIBELLE, HT FROM BRS WHERE BRS.HT>0 AND BRS.CODE NOT IN (SELECT CODE FROM EBP); A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait" |
Ba écoutes, là chapeau bas... Impec, ca marche !
Merci. Etienne |
salut j'ai un soucis avec une de mes requête d'insertion
DoCmd.RunSQL ("insert into devis (CodeDevis,nbVeh,nbjour,datepropose,com_devis,CodeTypeVeh,CodeActivite,CodeOrigine,IdEtat) values (" & codeD & "," & nbVeh.Value & "," & txtnbjour.Value & "," & datepropose.Value & "," & comD & "," & codeT & "," & codeA & "," & corg & "," & idi & ")") En fait il me lance un message d'erreur du genre "Microsoft Access a attribué la valeur Null à 0 champ(s) à la suite d'une erreur de conversion de type, 1 enregistrement(s) n'ont pas été ajoutés à la table à la suite de violations de clé, 0 enregistrement(s) à la suite de violation de verrou et 0 enregistrement(s) à la suite de violations des règles de validation" je ne comprend pas pourquoi il affiche ce message surtout qu'il ne le met pas tout le temps En faite dans le cas présent ma table devis est vide, elle hérite d'une autre table prestation, avec sous access la même clé primaire donc dans mon code vba je fait d'abord l'ajout dans la table devis puis dans la table prestation, et même en inversant l'ordre des insert le message aparait quand meme Autre chose, aussi ma table devis comporte d'autre champs que je n'ajoute pas dans ma requête insert, est ce que cela est génant? car j'ai mis le nom des colonnes que je veut ajouter donc normalement ça devrait pas être génant pour l'execution de la requete? Merci de voter aide PS: j'sai pas si mon problème correspond a 100% au sujet de ce forum mais il s'en rapproche pas mal lol |
Si ta clé primaire n'existe pas dans la table devis, ACCESS doit rajouter la ligne...
Sinon, c'est que ta table n'est pas vide ou peut-être que la clé primaire de la ligne que tu souhaites rajouter n'est pas dans le bon format (date, chaine, nombre...) ? A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait" |
j'ai bien vérifier et ma table est bien vide donc il ni a pas de risque de doublon
ma clé primaire est de type NuméroAuto Mais est-ce que c'est génant la partie héritage, vu que les deux tables prestation et devis ont le même nom de clé primaire avec une relation 1 a1, j'ai remarqué que dans les propriété de la relation je ne peut pas mettre a jour en cascade les champs correspondant dans l'integrité référentielle |
Quel est le nom de la colonne en clé primaire ?
A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait" |
c'est Numprestation |
Si tu as une relation 1-1 entre les deux tables et que les clés sont toutes deux des numéroauto, ça ne pourra jamais marcher, puisqu'ACCESS gère la numérotation automatique...
Une de tes deux clés doit être en entier long... A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait" |
ok donc en faite il faut que le numéro automatique de ma table fille soit un entier long
ce qui veut dire que je doit d'abord faire l'ajout dans ma table mère prestation puis dans ma table fille devis? et pour le lien dans les relations est ce que ça a de l'importance?j'ai une flèche qui va de prestation a devis |
je doit d'abord faire l'ajout dans ma table mère prestation puis dans ma table fille devis?
Oui, c'est ce qu'on appelle des contraintes d'intégrité référentielles... j'ai une flèche qui va de prestation a devis C'est toi qui a fait le modèle de données, donc tu es qualifié pour dire si c'est bien le bon sens :-) A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait" |
ouai c'est bon ça marche nikel merci de ton aide
pour le sens c'est bon aussi c'était une confirmation pour moi même en faite :-) par contre j'sai jamais pour l'intégrité réferentielle au niveau du type de jointure si c'est inclure tt les enregistrements de la table A et seulement ceux de la table B pour lesquels les champs sont égaux ou l'inverse sachant que dans mon MCD la table A est la table mère et la table B est l'une des tables hérité Merci encore pour aide c'était bien un problème du numéroAuto |
La jointure ne s'applique qu'aux requêtes (LEFT, RIGHT, INNER), pas à la définition des tables, on parle alors de CONSTRAINT...
A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait" |
Bonjour,
J'essaie actuellement sous Access d'insérer plusieurs enregistrements dans ma base de données avec la requête suivante : insert into Fournisseur (Ref_Fournisseur,Nom_Fournisseur,Adresse1,CodePostal,Ville,Pays,Telephone) values (1,'DENIS', 'Rue Nationale',37000,'TOURS','FRANCE','02-47-50-50-50'), (6,'TATA', 'Rue Machin',37200,'TOURS','FRANCE','02-47-40-60-30'); En exécutant cette requête sous Access, il me met comme erreur : "Point-virgule absent à la fin de l'instruction SQL". J'aimerais donc si possible savoir comment faire pour insérer plusieurs enregistrements sous Access. Merci d'avance |
bonjour,
ouvres un nouveau sujet, celui-ci est résolu ... ;o) polux |
| 23/03 20h06 | Sed - Insérer des espacements | Sed |
| 24/01 23h01 | Disk boot failure - Insert system disk and press Enter | Matériel |
| 16/07 10h56 | phpMyAdmin - 1045- Access denied for user root@localhost | Webmaster |
| 08/06 15h57 | Touche INSER | Clavier |
| 20/12 10h00 | [CCM] Insérer une image dans une discussion | CommentçaMarche |
| 01/08 10h00 | [ACCESS] insertion de données dans une table | 12 |
| 05/06 13h54 | VBA ACCESS inserer phrase dans fichier texte | 6 |
| 11/02 11h37 | Access insertion fichier pdf dans champs OLE | 1 |
| 23/12 18h25 | [ACCESS]Insérer 2 * pour un code barre | 1 |
| 29/09 16h00 | [PHP][Access]insertion des donneés | 0 |
![]() | OpenOffice.org - OpenOffice est une suite bureautique complète entièrement gratuite, compatible avec la suite Microsoft Office. Elle... | Catégorie: Suite bureautique Licence: Open Source |
![]() | PowerISO - PowerISO est un outil de gestion d'images de CD et DVD, capable d'ouvrir, d'extraire, de créer, d'éditer, de compresser et... | Catégorie: Gravure Licence: Demo |
![]() | AVS Disc Creator - Avec AVS DiscCreator vous pouvez rapidement graver vos données sur CD/DVD et Blu-ray disc. <h2>Fonctionnalités</h2> ... | Catégorie: Gravure Licence: Freeware/gratuit |
![]() | SSH Secure Shell - SSH secure shell for workstations est un client SSH flexible permettant de se connecter de façon sécurisée à des... | Catégorie: Telnet/SSH Licence: Open Source |
![]() | Linksys WAP54G Wireless Access | Catégorie: Point d'accès pour réseaux sans fil | 48.65 € Atlanpolis |
![]() | Trendnet Wireless N-Draft Access | Catégorie: Point d'accès pour réseaux sans fil | 97.90 € Toutpourlamicro.com |
![]() | Linksys Wireless-N Access Point | Catégorie: Point d'accès pour réseaux sans fil | 119.90 € Alapage |
![]() | 3Com Wireless LAN Managed | Catégorie: Point d'accès pour réseaux sans fil | 139.00 € PriceMinister |