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

Bases de données Delphi Discussion :

Requête SQL incorrecte


Sujet :

Bases de données Delphi

  1. #1
    Membre confirmé Avatar de vg-matrix
    Inscrit en
    Février 2007
    Messages
    1 220
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Février 2007
    Messages : 1 220
    Points : 612
    Points
    612
    Par défaut Requête SQL incorrecte
    Salut tout le monde, j'ai des soucis avec la requête suivante qui est sensée généré des données sur un etat:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT T_ENTREPRISE.noment, T_ENTREPRISE.sitgeoent, T_CLIENT.numcli, T_CLIENT.nomprencli, T_CLIENT.contactcli, T_CLIENT.noment, T_POUSSEUR.numpouss, T_POUSSEUR.nomprenpouss, T_POUSSEUR.contactpouss, T_COMMANDES.numcmd, T_COMMANDES.datecmd, T_COMMANDES.etatcmd, T_COMMANDES.dateta, T_COMMANDES.operateur, T_COMMANDES.numcli, T_COMMANDES.numpouss, T_COMMANDES.disponible, T_COMMANDES.valeurtot, T_COMMANDES.totliq, T_COMMANDES.totcas, T_DETAILS_COMMANDES.numcmd, T_DETAILS_COMMANDES.nomboiss, T_DETAILS_COMMANDES.prixliq, T_DETAILS_COMMANDES.prixemb, T_DETAILS_COMMANDES.qte, T_DETAILS_COMMANDES.totcasier, T_DETAILS_COMMANDES.totliq, T_DETAILS_COMMANDES.valtot, T_DETAILS_COMMANDES.nbcasrendu, T_DETAILS_COMMANDES.totcasrendu
    FROM T_POUSSEUR, T_ENTREPRISE, T_CLIENT, T_COMMANDES, T_DETAILS_COMMANDES
    WHERE T_ENTREPRISE.noment=T_CLIENT.noment
    AND T_CLIENT.numcli=T_COMMANDES.numcli
    AND T_COMMANDES.numcmd=T_DETAILS_COMMANDES.numcmd
    AND T_COMMANDES.numcmd = nc
    ORDER BY  T_DETAILS_COMMANDES.nomboiss;
    Lorsque je tente de l'exécuter dans MSQuery, j'aile message suivant:
    La requête SQL ne peut pas être représentée graphiquement. Désirez-vous continuer quand même?
    Je ne vois vraiment pas d'où vient le problème
    Il est difficile de retrouver ses erreurs lorsqu'on est persuadé que son code est juste...

    Groupe des développeurs ivoiriens

  2. #2
    Membre éprouvé Avatar de redoran
    Homme Profil pro
    Développeur-Amateur
    Inscrit en
    Juin 2010
    Messages
    1 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur-Amateur
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 346
    Points : 1 031
    Points
    1 031
    Par défaut
    slt ; quel SGBD ? et nc c'est un paramètre je crois qu'il vous manque les : après = ===> =:nc
    il me semble que ta requête est bonne .
    sinon essaye chaque fois d'ajouté une liaison de table pour savoir a quel niveau elle bloque

  3. #3
    Membre confirmé Avatar de vg-matrix
    Inscrit en
    Février 2007
    Messages
    1 220
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Février 2007
    Messages : 1 220
    Points : 612
    Points
    612
    Par défaut
    Citation Envoyé par redoran Voir le message
    slt ; quel SGBD ? et nc c'est un paramètre je crois qu'il vous manque les : après = ===> =: nc
    il me semble que ta requête est bonne .
    sinon essaye chaque fois d'ajouté une liaison de table pour savoir a quel niveau elle bloque
    J'utilise une base de données MS Access 2007. J'ai une erreur quand je mets "=:".
    Il est difficile de retrouver ses erreurs lorsqu'on est persuadé que son code est juste...

    Groupe des développeurs ivoiriens

  4. #4
    Membre éprouvé Avatar de redoran
    Homme Profil pro
    Développeur-Amateur
    Inscrit en
    Juin 2010
    Messages
    1 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur-Amateur
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 346
    Points : 1 031
    Points
    1 031
    Par défaut
    Re; chez moi sa marche très bien avec =: c'est important pour définir le paramètre et j'utilise adoquery ; et si vous faite =nc automatiquement sa génère une erreur.
    sinon faut revoir les liaisons de tes tables au niveau de la BDD.

  5. #5
    Membre éprouvé Avatar de redoran
    Homme Profil pro
    Développeur-Amateur
    Inscrit en
    Juin 2010
    Messages
    1 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur-Amateur
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 346
    Points : 1 031
    Points
    1 031
    Par défaut
    essaye cette astuce ; d'habitude je recopie le contenu du adoquery ensuite dans la base de données access je recopie l'instruction sql dans le page sql d'access et j'exécute pour voir si sa marche directement

  6. #6
    Membre expérimenté
    Homme Profil pro
    Ingenieur de recherche - Ecologue
    Inscrit en
    Juin 2003
    Messages
    1 146
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingenieur de recherche - Ecologue

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 146
    Points : 1 412
    Points
    1 412
    Par défaut
    Salut

    il serait plus judicieux de suivre la norme SQL
    comme cela
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    SELECT T_Entreprise.Noment,
           T_Entreprise.Sitgeoent,
           T_Client.Numcli,
           T_Client.Nomprencli,
           T_Client.Contactcli,
           T_Client.Noment,
           T_Pousseur.Numpouss,
           T_Pousseur.Nomprenpouss,
           T_Pousseur.Contactpouss,
           T_Commandes.Numcmd,
           T_Commandes.Datecmd,
           T_Commandes.Etatcmd,
           T_Commandes.Dateta,
           T_Commandes.Operateur,
           T_Commandes.Numcli,
           T_Commandes.Numpouss,
           T_Commandes.Disponible,
           T_Commandes.Valeurtot,
           T_Commandes.Totliq,
           T_Commandes.Totcas,
           T_Details_Commandes.Numcmd,
           T_Details_Commandes.Nomboiss,
           T_Details_Commandes.Prixliq,
           T_Details_Commandes.Prixemb,
           T_Details_Commandes.Qte,
           T_Details_Commandes.Totcasier,
           T_Details_Commandes.Totliq,
           T_Details_Commandes.Valtot,
           T_Details_Commandes.Nbcasrendu,
           T_Details_Commandes.Totcasrendu
      FROM T_Entreprise, ,
        INNER JOIN T_Client ON (T_Entreprise.Noment = T_Client.Noment)
        INNER JOIN T_Commandes ON (T_Client.Numcli = T_Commandes.Numcli)
        INNER JOIN T_Details_Commandes ON (T_Commandes.Numcmd = T_Details_Commandes.Numcmd)
        INNER JOIN T_Pousseur ON (? ? ? ? ? ? ?)
      WHERE T_Commandes.Numcmd = Nc
      ORDER BY T_Details_Commandes.Nomboiss

    cela m'a permis de voir que tu n'as pas de relation avec la table T_Pousseur, Normal ??

    comme l'indique vg-matrix pour passer un parametre, il faut le preceder d'un :.
    Mais
    = :Nc
    et non
    =: NC
    comme tu l'indiques

    a+

    olivier
    Merci d'ajouter un sur les tags qui vous ont aidé

Discussions similaires

  1. Requête SQL avec inner join incorrect
    Par FabienLep dans le forum Langage SQL
    Réponses: 13
    Dernier message: 10/11/2014, 17h45
  2. Requête SQL incorrecte sur DELPHI : champ non trouvé
    Par MélanieS dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/08/2013, 20h43
  3. [AC-2003] Resultat de requête SQL avec des dates incorrect
    Par rockin-bones dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 19/05/2011, 14h35
  4. Utilisation de MAX dans une requête SQL
    Par Evil onE dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/06/2004, 18h38
  5. Requête SQL
    Par Leludo dans le forum Langage SQL
    Réponses: 2
    Dernier message: 17/02/2003, 16h44

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