IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Problème de requête SQL [Toutes versions]


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    hahahaha
    Inscrit en
    Avril 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : hahahaha

    Informations forums :
    Inscription : Avril 2013
    Messages : 61
    Points : 34
    Points
    34
    Par défaut Problème de requête SQL
    Bonjour à tous,

    J'ai un souci avec ma requête SQL, j'ai bien vérifier qu'elle contienne le bon nombre d'argument, mais à l'exécution, j'ai ce message d'erreur "Le nombre de valeurs de la requête doit coïncider avec le nombre de champs destination".

    Voici la requête en question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    requete_ajout1 = "INSERT INTO pv VALUES([Formulaires]![saisie2]![num_pv],[Formulaires]![saisie2]![date_pv],[Formulaires]![saisie2]![heure_pv],[Formulaires]![saisie2]![num_bus],[Formulaires]![saisie2]![ligne],[Formulaires]![saisie2]![controleur],[Formulaires]![saisie2]![conducteur],[Formulaires]![saisie2]![signature],[Formulaires]![saisie2]![piece_id],[Formulaires]![saisie2]![frais_dossier],[Formulaires]![saisie2]![majoration],[Formulaires]![saisie2]![reduction],[Formulaires]![saisie2]![montant_total],[Formulaires]![saisie2]![annulation],"","",[Formulaires]![saisie2]![commentaire],[Formulaires]![saisie2]![arret],[Formulaires]![saisie2]![id_contrevenant],[Formulaires]![saisie2]![motif])" & ";"
        DoCmd.RunSQL requete_ajout1
    Et voici la structure de la table dans laquelle je veux insérer un enregistrement :

    Merci par avance pour votre aide

  2. #2
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Salut,

    Dans ton code, il faut pas mettre "", mais :
    • soit Null ;
    • soit """" ;
    • soit '' ;


    @+.
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    hahahaha
    Inscrit en
    Avril 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : hahahaha

    Informations forums :
    Inscription : Avril 2013
    Messages : 61
    Points : 34
    Points
    34
    Par défaut
    @zoom61 : Merci beaucoup pour ta réponse, la requête s'exécute bien, maintenant j'ai un autre souci c'est qu'apparemment y'a une valeur de ma requête qui fait que je ne respecte pas une contrainte de validation de mon champ...

    Il n'y a pas de moyen d'obtenir plus de détails sur cette erreur, savoir quel champs par exemple ?

    voici mon message d'erreur :


    Si vous ou quelqu'un d'autre peut m'aiguiller

    EDIT : J'ai trouvé quel champ m’embêtait, mais j'ai a nouveau le message avec cette fois le message qu'un enregistrement n'a pas été ajouté à cause d'un violation de clé. De quel clé s'agit-il ? clé primaire ou les clés étrangères de ma table ? et comment cette règle peut-elle être violée ?

  4. #4
    Rédacteur

    Avatar de zoom61
    Homme Profil pro
    ...
    Inscrit en
    Janvier 2005
    Messages
    9 429
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : ...
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 9 429
    Points : 58 612
    Points
    58 612
    Billets dans le blog
    11
    Par défaut
    Salut,

    Tu peux faire un msgbox de ton code, cela te donnera peut-être une piste !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    msgbox "INSERT INTO pv VALUES([Formulaires]![saisie2]![num_pv],[Formulaires]![saisie2]![date_pv],[Formulaires]![saisie2]![heure_pv],[Formulaires]![saisie2]![num_bus],[Formulaires]![saisie2]![ligne],[Formulaires]![saisie2]![controleur],[Formulaires]![saisie2]![conducteur],[Formulaires]![saisie2]![signature],[Formulaires]![saisie2]![piece_id],[Formulaires]![saisie2]![frais_dossier],[Formulaires]![saisie2]![majoration],[Formulaires]![saisie2]![reduction],[Formulaires]![saisie2]![montant_total],[Formulaires]![saisie2]![annulation],"","",[Formulaires]![saisie2]![commentaire],[Formulaires]![saisie2]![arret],[Formulaires]![saisie2]![id_contrevenant],[Formulaires]![saisie2]![motif])" & ";"
    @+.
    N'oubliez pas le Tag afin de faciliter la recherche, et en votant cela permet de mieux la cibler.

    Je ne réponds pas aux messages privés s'ils sont liés à une question technique

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    hahahaha
    Inscrit en
    Avril 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : hahahaha

    Informations forums :
    Inscription : Avril 2013
    Messages : 61
    Points : 34
    Points
    34
    Par défaut
    @zoom61 : Merci pour ton aide, le msgbox m'a pas servi parce qu'il n'affichait pas les valeurs des arguments de ma requête, il m'affichait le nom des champs comme dans le code vba, mais au final c'est parce que la table en question était ouverte depuis plus de souci

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    hahahaha
    Inscrit en
    Avril 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : hahahaha

    Informations forums :
    Inscription : Avril 2013
    Messages : 61
    Points : 34
    Points
    34
    Par défaut
    J'ai un nouveau souci avec une autre requête :/ décidément...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    requete_id = "SELECT id_contrevenant FROM contrevenant WHERE (contrevenant.nom=[Formulaires]![saisie2]![nom] AND contrevenant.prenom=[Formulaires]![saisie2]![prenom] AND contrevenant.date_naiss=[Formulaires]![saisie2]![date_naiss] AND contrevenant.lieu_naiss=[Formulaires]![saisie2]![lieu_naiss] AND contrevenant.code_postal=[Formulaires]![saisie2]![code_postal])" & ";"
    le message apparaît dans le VBA et me dis cela "Erreur d'exécution '3061' Trop peu de paramètres. 5 attendu."

    alors que les 5 champs de ma requête sont bel et bien remplis dans mon formulaire donc je ne vois pas le souci...

    Merci d'avance pour votre aide à nouveau

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    hahahaha
    Inscrit en
    Avril 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : hahahaha

    Informations forums :
    Inscription : Avril 2013
    Messages : 61
    Points : 34
    Points
    34
    Par défaut
    En plaçant les champs de mon formulaire dans des variables, je sais qu'ils sont bien tous remplis, je place ensuite mes variables dans ma requête et malgré cela, j'ai toujours le même souci,il m'en réclamait 5 maintenant il ne m'en demande plus que 3.

    nom contient par exemple "cook", prénom : "tim", daten : 23/07/1884, lieun : "Paris" et codep : "75008"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     nom = Forms!saisie2!nom
        prenom = Forms!saisie2!prenom
        daten = Forms!saisie2!date_naiss
        lieun = Forms!saisie2!lieu_naiss
        codep = Forms!saisie2!code_postal
     
        requete_id = "Select id_contrevenant FROM contrevenant WHERE (contrevenant.nom = nom AND contrevenant.prenom = prenom AND contrevenant.date_naiss = daten AND contrevenant.lieu_naiss = lieun AND contrevenant.code_postal = codep);"
        Set enreg = base.OpenRecordset(requete_id)


    HELP svp

    EDIT : Mes variables sont entre les guillemets c'est donc pour cela ...

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    hahahaha
    Inscrit en
    Avril 2013
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : hahahaha

    Informations forums :
    Inscription : Avril 2013
    Messages : 61
    Points : 34
    Points
    34
    Par défaut
    OK, le souci était aussi au niveau des guillemets, cottes et dièses à placer pour les champs de types string et les dates...

    Merci de votre aide quand même.

    Voici la bonne requête :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    requete_id = "Select id_contrevenant FROM contrevenant WHERE (contrevenant.nom = '" & nom & "'   AND contrevenant.prenom ='" & prenom & "' AND contrevenant.date_naiss =  #" & daten & "#  AND contrevenant.lieu_naiss = '" & lieun & "' AND contrevenant.code_postal = '" & codep & "');"

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de requête SQL avec instruction TRANSFORM
    Par Nosper dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 21/06/2005, 16h15
  2. problème de requète SQL pour formulaire
    Par en_stage dans le forum Requêtes et SQL.
    Réponses: 15
    Dernier message: 21/06/2005, 12h21
  3. [SQL] Problème de requête SQL de plus de 8060 caractères ?
    Par webtheque dans le forum MS SQL Server
    Réponses: 13
    Dernier message: 06/04/2005, 15h07
  4. [SQLserver2000][SQLServer CE] problème de requête SQL
    Par JBernn dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 27/01/2005, 09h29
  5. Problème de requète SQL dans un Requery
    Par Keraccess dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 22/10/2004, 14h58

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo