Access 03 : requête SQL fausse

Fermé
Dédé86 Messages postés 682 Date d'inscription vendredi 23 décembre 2005 Statut Membre Dernière intervention 14 mars 2017 - 29 juin 2008 à 18:03
Dédé86 Messages postés 682 Date d'inscription vendredi 23 décembre 2005 Statut Membre Dernière intervention 14 mars 2017 - 29 juin 2008 à 20:52
Bonjour,

J’ai 4 tables dans ma base de données.

Partage (NoPartage, NomPartage)
Dossier (NoDossier, NomDossier, #NoPartage)
SousDossier (NoSousDossier, NomSousDossier, #NoDossier)
GL (NoGL, NomGL, #NoSousDossier, #NoDossier)

1 partage comporte 1 ou plusieurs dossiers et 1 dossier appartient à 1 et 1 seul dossier
1 dossier peut comporter ou pas 1 ou plusieurs sous-dossier. Dans ce cas, un sous-dossier provient d’1 et 1 seul dossier.
1 dossier s’il ne comporte pas de sous-dossier comporte 1 ou plusieurs GL

Voici ce que je voudrais faire :

Ajouter un GL (quand le dossier n’a pas de sous-dossier et directement un GL). Je fais ceci directement en mode SQL. Voici ma requête :

INSERT INTO GL ( NomGL, NoSousDossier, NoDossier ) VALUES ('Plaza', 0, 5);

Une erreur s’affiche à l’écran : Microsoft Office Access ne peut pas ajouter tous les enregistrements de la requête Ajout.

Microsoft Office 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. Voulez-vous exécuter tout de même cette requête action ? Cliquez sur Oui pour ignorer la ou les erreurs et exécuter la requête. Cliquez sur Aide si vous souhaitez connaître les causes de ces violations.

Pouvez-vous m'aider ?

5 réponses

Utilisateur anonyme
29 juin 2008 à 19:57
Tu as oublié la clé primaire dans ta requête.
INSERT INTO GL VALUES ('','Plaza', 0, 5); 

Ceci marche si NoGL est en auto-increment. Sinon il faut que renseigne ce numéro en mettant un numéro entre ''.
0
Dédé86 Messages postés 682 Date d'inscription vendredi 23 décembre 2005 Statut Membre Dernière intervention 14 mars 2017 208
29 juin 2008 à 20:09
Oui NoGL est en auto-incrément mais INSERT INTO GL VALUES ('','Plaza', 0, 5); ne fonctionne pas. Il me dit : type de données incompatible dans l'expression du critère.

Peux-tu m'éclairer ?
0
Utilisateur anonyme
29 juin 2008 à 20:13
Hum... Je vois pas trop d'où ça peut venir...
0
Utilisateur anonyme
29 juin 2008 à 20:36
Et en essayant ça :
INSERT INTO GL ( NoGL, NomGL, NoSousDossier, NoDossier ) VALUES ('','Plaza', 0, 5); 

Tu peux aussi vérifier ton NoGL s'il te plaît? Il est en auto-increment certes, mais as tu précisé des choses comme NOT NULL...
0
Dédé86 Messages postés 682 Date d'inscription vendredi 23 décembre 2005 Statut Membre Dernière intervention 14 mars 2017 208
29 juin 2008 à 20:46
Non pas de Not null ou de choses particulières pour mon NoGL. Je pense que l'erreur vient de l'ajout de valeur à dans cette table vu les liasons clés primaires/clés étrangères avec les autres tables....
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Utilisateur anonyme
29 juin 2008 à 20:50
Honnêtement, je ne pourrais pas t'aider plus... Désolé :s
0
Dédé86 Messages postés 682 Date d'inscription vendredi 23 décembre 2005 Statut Membre Dernière intervention 14 mars 2017 208
29 juin 2008 à 20:52
Merci beaucoup d'avoir essayé quand même :) . Je te suis reconnaissant Sky34gl3. A+ tard alors sur un autre problème peut-être ;)

En attendant, je lance un appel à l'aiiiiiiiiiiiiiiiiide !!

Quelqu'un peut m'aider ?
0