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

 Delphi Discussion :

ZEOS : encore un petit coup de pouce svp


Sujet :

Delphi

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 13
    Points : 11
    Points
    11
    Par défaut ZEOS : encore un petit coup de pouce svp
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        ZQuery.Close;
        ZQuery.SQL.Clear;
        ZQuery.SQL.Add('select * from COUNTRY where CURRENCY ="dollar"');
        ZQuery.Open;
    Pourquoi cette bête requête provoque une erreur qui me dit :

    Dynamic SQL Error
    SQL error code = -206
    Column unknown
    dollar
    At line 1, column 29


    "dollar" n'est pas le nom de la colonne mais la valeur à rechercher ...

  2. #2
    Expert éminent
    Avatar de Lung
    Profil pro
    Analyste-programmeur
    Inscrit en
    Mai 2002
    Messages
    2 664
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste-programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 664
    Points : 6 967
    Points
    6 967
    Par défaut
    Citation Envoyé par llewsor Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        ZQuery.Close;
        ZQuery.SQL.Clear;
        ZQuery.SQL.Add('select * from COUNTRY where CURRENCY ="dollar"');
        ZQuery.Open;
    Je ne connais pas ZEOS, mais c'est pas des côtes simples qu'il faut utiliser ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        ZQuery.SQL.Add('select * from COUNTRY where CURRENCY = ''dollar''');
    L'urgent est fait, l'impossible est en cours, pour les miracles prévoir un délai. ___ Écrivez dans un français correct !!

    C++Builder 5 - Delphi 6#2 Entreprise - Delphi 2007 Entreprise - Delphi 2010 Architecte - Delphi XE Entreprise - Delphi XE7 Entreprise - Delphi 10 Entreprise - Delphi 10.3.2 Entreprise - Delphi 10.4.2 Entreprise - Delphi 11.1 Entreprise
    OpenGL 2.1 - Oracle 10g - Paradox - Interbase (XE) - PostgreSQL (15.4)

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    566
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 566
    Points : 1 045
    Points
    1 045
    Par défaut
    Bonjour,

    Je suppose que tu utilises Firebird.

    Dans cette situation, CURRENCY ne doit pas être un nom de colonne car il s'agit d'un mot réservé.

    Es-tu certain que CURRENCY est le nom de ta colonne ? Si oui, tu le changes, tu éviteras des ennuis futurs.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ZQuery.Close;
        ZQuery.SQL.Clear;
        ZQuery.SQL.Add('select * from COUNTRY where NomColonne ="dollar"');
        ZQuery.Open;
    Regardes également la remarque précédente.

    L'étoile * n'est pas la méthode la plus optimiser pour visualiser une table

    A plus

  4. #4
    Modérateur
    Avatar de Rayek
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2005
    Messages
    5 235
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 235
    Points : 8 504
    Points
    8 504
    Par défaut
    Ce n'est peut être pas des ["] qu'il faut mettre mais des ['] pour encadrer ta valeur.
    En général, sauf exception, dans les bases de données c'est des ['] qu'il faut utiliser.
    Modérateur Delphi

    Le guide du bon forumeur :
    __________
    Rayek World : Youtube Facebook

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2013
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2013
    Messages : 13
    Points : 11
    Points
    11
    Par défaut
    Oui, j'utilise Firebird.

    Citation Envoyé par Lung Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        ZQuery.SQL.Add('select * from COUNTRY where CURRENCY = ''dollar''');
    Youppi ! c'était ça

    On avance, lentement mais on avance ...

    Merci

  6. #6
    Membre expérimenté Avatar de guillemouze
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    876
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 876
    Points : 1 448
    Points
    1 448
    Par défaut
    Citation Envoyé par seabs Voir le message
    L'étoile * n'est pas la méthode la plus optimiser pour visualiser une table
    Je suis pas sur, il me semble avoir lu quelque part qu'il était préférable d'utiliser l’étoile plutôt qu'un sous-ensemble qui va forcer le SGBD à construire une sorte de vue pour le résultat plutôt qu'utiliser un pseudo pointeur directement sur les enregistrements de la table.

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    566
    Détails du profil
    Informations personnelles :
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2009
    Messages : 566
    Points : 1 045
    Points
    1 045
    Par défaut
    Bonjour,

    @guillemouze

    Je suis pas sur, il me semble avoir lu quelque part qu'il était préférable d'utiliser l’étoile plutôt qu'un sous-ensemble qui va forcer le SGBD à construire une sorte de vue pour le résultat plutôt qu'utiliser un pseudo pointeur directement sur les enregistrements de la table.
    A priori, ce n'est pas l'avis de plusieurs experts de ce forum SQLpro, CinePhil, etc.

    Sur ce sujet, tu peux examiner OPTIMISATION des SGBDR et du SQL par SQLPro chapitre 9.

    http://sqlpro.developpez.com/cours/optimiser/#L8

    Il existe certainement quelques exceptions, mais à vérifier par des tests.

    A+

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

Discussions similaires

  1. un petit coup de pouce svp
    Par freestyle83 dans le forum Langage
    Réponses: 6
    Dernier message: 17/03/2011, 13h19
  2. SDL & GTK besoin d'ub petit coup de pouce :)
    Par hunter99 dans le forum SDL
    Réponses: 1
    Dernier message: 15/04/2007, 23h51
  3. un petit coup de pouce svp ;)
    Par softstar dans le forum C++
    Réponses: 14
    Dernier message: 11/05/2006, 09h20
  4. tableau de pointeur+tri+coup de pouce svp
    Par php4life dans le forum C
    Réponses: 12
    Dernier message: 15/04/2006, 13h49
  5. Réponses: 3
    Dernier message: 28/02/2003, 17h06

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