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

Développement SQL Server Discussion :

[SQLExp2005] [SQL] Code valide ?


Sujet :

Développement SQL Server

  1. #1
    Nouveau membre du Club
    Inscrit en
    Mars 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 32
    Points : 29
    Points
    29
    Par défaut [SQLExp2005] [SQL] Code valide ?
    Bonjour,
    je travaille sous Delphi 5 et j'ai besoin d'accéder les données d'une autre application sous SQL Express 2005.
    Voici la requête SQL que l'on me fournit pour accéder certaines de leurs données.
    Ma question est: est-ce que cette requête est valide ?

    Merci à l'avance

    Requête qui sort le prix net du produit propane en date du jour pour un client

    Code : 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
     
    SELECT Top 1 CASE WHEN vComL.FlType = 1 THEN
    CASE WHEN iProduit.Type = 6 AND IsNull(iCodePx.FlFixe, 0) = 0 THEN 
    Convert(Money, Replace(Config.valeur, ',', '.')) ELSE 0 END + iProdPxv.Prix - 
    CASE WHEN vComL.DtFinEsc <> '' AND vComL.DtFinEsc <= Convert(Varchar,getdate(),112) THEN 0 ELSE vComL.MtEsc END
    ELSE
    0 
    END AS [Prix]
    FROM vComL
    join vCom On vComL.kvCom = vCom.kvCom 
    Left Join iProduit On vComL.kiProduit = iProduit.kiProduit 
    Left Join zCardex On vCom.kzCardex = zCardex.kzCardex
    Left Join iProdPxv On vComL.kiProduit = iProdPxv.kiProduit and vComL.kicodepx = iProdPxv.kicodepx 
    Left Join iCodePx On iCodePx.KiCodePx = vComL.KiCodePx
    Left Join Config On Config.Sequence = 430 and Config.Path = 'Prix de base du propane' AND Config.Section = 'Propane'
    Where vComL.FlInactive = 0 and ((vComL.qtbo <> 0 and vComL.FlType = 0) or vComL.FlType <> 0) 
    And vCom.FlModele = 5 And vComL.kiProduit = 86 And zCardex.NoCardex = '0000PDF100'
    Order By vCom.kvCom

  2. #2
    Membre confirmé Avatar de agemis31
    Profil pro
    DBA
    Inscrit en
    Octobre 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : DBA

    Informations forums :
    Inscription : Octobre 2007
    Messages : 399
    Points : 478
    Points
    478
    Par défaut Syntaxiquement ça à l'air "valide"
    Bonjour,

    On dirait bien qu'il s'agit de T-SQL correct.
    (T-SQL est l'idiome SQL de SQL Serveur)

    Donc oui, ça à l'air "valide".

    Vous ne pouvez pas exécuter cette requête, avec delphi ou un autre client ?

    @+

  3. #3
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 193
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 193
    Points : 28 077
    Points
    28 077
    Par défaut
    Pour moi aussi, cette requette me semble correcte.

    Quel est le problème rencontré avec
    --- Sevyc64 ---

    Parce que le partage est notre force, la connaissance sera notre victoire

  4. #4
    Nouveau membre du Club
    Inscrit en
    Mars 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 32
    Points : 29
    Points
    29
    Par défaut Erreur
    Alors pour tester cette requête, j'utilise le SQL Explorer de Delphi 5.
    Le serveur SQL Express 2005 est fonctionnel car j'ai d'autres requêtes qui fonctionnent très bien.
    Quand j'exécute cette requête, j'ai l'erreur suivante :
    Invalid use of keyword
    Token: 1
    Line number: 1

    Merci pour votre temps.

    Yves
    Images attachées Images attachées  

  5. #5
    Membre confirmé Avatar de agemis31
    Profil pro
    DBA
    Inscrit en
    Octobre 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : DBA

    Informations forums :
    Inscription : Octobre 2007
    Messages : 399
    Points : 478
    Points
    478
    Par défaut Et avec un autre client ?
    Bonsoir,

    Pas très parlant comme erreur...

    Savez vous si vous passez par un driver ODBC ?
    Si c'est le cas, le mot "section" est un mot réservé d'ODBC, ça peut peut être poser des problèmes à votre client. Vous pouvez essayer de le mettre entre crochets.

    Mais le plus simple serait peut être d'exécuter la requête avec un autre client, et sans doute avec Management studio express si vous n'avez pas de client SQL Natif.

    Il se trouve ici

    @+

  6. #6
    Nouveau membre du Club
    Inscrit en
    Mars 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 32
    Points : 29
    Points
    29
    Par défaut Meilleur message d'erreur
    Bonjour,

    j'ai essayé la requête dans Management studio express et voilà,
    cela fonctionne très bien.

    Alors, j'ai installé le client SQL Natif dans le BDE via le ODBC administrateur et j'ai la même erreur.
    J'y perds un peu mon latin.

    Y-a-t-il un autre moyen d'accéder la DB via Delphi sans passer par le BDE ?

    Merci

    Yves

  7. #7
    Membre confirmé Avatar de agemis31
    Profil pro
    DBA
    Inscrit en
    Octobre 2007
    Messages
    399
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : DBA

    Informations forums :
    Inscription : Octobre 2007
    Messages : 399
    Points : 478
    Points
    478
    Par défaut Je m'en doutais un peu
    Y'en a qui bossent tard !

    Bon, mes années delphi remontent loin, c'était du delphi 7 et il y avait un accès natif à SQL serveur via dbexpress. Mais on est hors charte la, je t'envoie un mail
    privé.

  8. #8
    Nouveau membre du Club
    Inscrit en
    Mars 2006
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 32
    Points : 29
    Points
    29
    Par défaut Accès via ADOConnection
    Finalement, la solution était dans Delphi 5.
    Une connection ADO résout le problème pour cette requête SQL.

    Merci à tous.

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

Discussions similaires

  1. [VBA][SQL] code pour requete sql update en vba
    Par titocv723 dans le forum Requêtes et SQL.
    Réponses: 14
    Dernier message: 24/10/2006, 17h45
  2. probleme de connection à my sql +code
    Par foulla002 dans le forum JDBC
    Réponses: 12
    Dernier message: 07/08/2006, 11h46
  3. [VBA][Excel] code validation liste
    Par mulanzia2003 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/07/2006, 07h34
  4. [SQL] Code binaire de ' (apostrophe)
    Par fab22montpellier dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 13/10/2005, 11h25

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