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

Python Discussion :

sql parameter erreur


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    ngénieur d'etat en science géodésique et travaux topographique
    Inscrit en
    Septembre 2016
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : ngénieur d'etat en science géodésique et travaux topographique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2016
    Messages : 152
    Par défaut sql parameter erreur
    comment corriger cette erreur:

    the sql contains 7 parameter markers but 2 parameters were supplied

    qui je obtenu quand j'exécute ce code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    id_list = (23, 19, 35, 16, 12, 78)
    query = "delete from USER where id IN ({}) and country like ? ".format(", ".join("?" * len(id_list)))
    cursor.execute(query, id_list,"France")

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Par exemple, en passant les 7 paramètres à la suite:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cursor.execute(query, *id_list +("France",))
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre confirmé
    Homme Profil pro
    ngénieur d'etat en science géodésique et travaux topographique
    Inscrit en
    Septembre 2016
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : ngénieur d'etat en science géodésique et travaux topographique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2016
    Messages : 152
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Par exemple, en passant les 7 paramètres à la suite:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    cursor.execute(query, *id_list +("France",))
    - W
    Merci wiztricks;
    J'ai essayé de modifier mon code selon votre motion mais je obtenu cette erreur

    Nom : para.PNG
Affichages : 131
Taille : 14,2 Ko

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 741
    Par défaut
    Salut,

    çà marche chez moi avec les valeurs données:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    >>> def f(q, *args):
    ...     print(q, *args)
    ...
    >>> id_list = (23, 19, 35, 16, 12, 78)
    >>> f('xxx', *id_list +("France",))
    xxx 23 19 35 16 12 78 France
    Comptez le nombre de paramètres reçus par la fonction est comparez avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    >>> f('xxx', id_list, "France")
    xxx (23, 19, 35, 16, 12, 78) France
    >>>
    Ceci dit, il serait sans doute plus robuste de concaténer les tuples avant l'unpacking:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    >>> f('xxx', *(id_list +("France",)))
    xxx 23 19 35 16 12 78 France
    >>>
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre confirmé
    Homme Profil pro
    ngénieur d'etat en science géodésique et travaux topographique
    Inscrit en
    Septembre 2016
    Messages
    152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : ngénieur d'etat en science géodésique et travaux topographique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Septembre 2016
    Messages : 152
    Par défaut
    Merci wiztricks;
    le problème est résolu selon votre code

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

Discussions similaires

  1. [PL/SQL]message erreur
    Par samdev dans le forum Oracle
    Réponses: 1
    Dernier message: 20/01/2006, 18h24
  2. SQL LOADER: Erreur
    Par claralavraie dans le forum SQL*Loader
    Réponses: 19
    Dernier message: 11/01/2006, 10h26
  3. [Sql*Loader] Erreur ORA-00054
    Par Spyco dans le forum Oracle
    Réponses: 4
    Dernier message: 23/12/2005, 16h43
  4. [SQL Server]Erreur d'insertion dans la DB
    Par Dnx dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 26/09/2005, 13h55
  5. [DTS sql server] Erreur lors de l'insertion de trop de ligne
    Par MoTUmBo dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 05/07/2005, 22h44

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