1. #1
    Candidat au Club
    Homme Profil pro
    azerty
    Inscrit en
    février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : azerty

    Informations forums :
    Inscription : février 2017
    Messages : 5
    Points : 2
    Points
    2

    Par défaut Erreur Statut SQL: 07009

    Bonjour,

    On m'a paramétré une connexion ODBC vers une base SQL.
    La requête suivante fonctionne bien:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT "Fiche_Anomalie"."ANO_chrono_creation", "Fiche_Anomalie"."ANO_chrono_cloture", "Fiche_Anomalie"."ANO_contact_nom" FROM "HelpDesk"."dbo"."Fiche_Anomalie" WHERE ( "Fiche_Anomalie"."ANO_chrono_creation" >= {d '2017-01-30' } AND "Fiche_Anomalie"."ANO_chrono_creation" <= {ts '2017-02-03 23:59:59' } )
    Mais lorsque j’exécute la requête suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT "Fiche_Anomalie"."ANO_chrono_creation", "Fiche_Anomalie"."ANO_chrono_cloture", "Fiche_Anomalie"."ANO_contact_nom" FROM "HelpDesk"."dbo"."Fiche_Anomalie" WHERE ( "Fiche_Anomalie"."ANO_chrono_creation" >= :DateDebut AND "Fiche_Anomalie"."ANO_chrono_creation" <= :DateFin )
    Cela ne fonctionne plus...
    J'ai les erreurs suivantes:
    - Impossible de charger le contenu des données
    - Statut SQL: 07009 Index de descripteur incorrect
    - Vous avez essayé de définir un paramètre à la position '1' mais il n'y a que '0' paramètres permis. Une des raisons peut être que la propriété "ParameterNameSubstitution" n'est pas définie sur TRUE dans la source de données.

    Bref, que faire ?

    Merci pour vos éclaircissement....

  2. #2
    Rédacteur

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

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

    Informations forums :
    Inscription : janvier 2005
    Messages : 9 213
    Points : 58 395
    Points
    58 395
    Billets dans le blog
    11

    Par défaut

    Ton problème vient du formatage de ta date.
    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
    Candidat au Club
    Homme Profil pro
    azerty
    Inscrit en
    février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : azerty

    Informations forums :
    Inscription : février 2017
    Messages : 5
    Points : 2
    Points
    2

    Par défaut

    Citation Envoyé par zoom61 Voir le message
    Ton problème vient du formatage de ta date.
    Je ne pense pas, j'ai la même erreur avec cette requête où il n'y a pas de date:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT COUNT( * ) FROM "HelpDesk"."dbo"."Fiche_Anomalie" WHERE "Fiche_Anomalie"."ANO_affecte_a" = :Nom

  4. #4
    Rédacteur

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

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

    Informations forums :
    Inscription : janvier 2005
    Messages : 9 213
    Points : 58 395
    Points
    58 395
    Billets dans le blog
    11

    Par défaut

    Elle ne devrait pas plutôt s'écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT COUNT( * ) FROM "HelpDesk"."dbo"."Fiche_Anomalie" WHERE "Fiche_Anomalie"."ANO_affecte_a" = ':Nom'
    Mais tu récupères ta variable d'où ?
    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
    Candidat au Club
    Homme Profil pro
    azerty
    Inscrit en
    février 2017
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : azerty

    Informations forums :
    Inscription : février 2017
    Messages : 5
    Points : 2
    Points
    2

    Par défaut

    Citation Envoyé par zoom61 Voir le message
    Elle ne devrait pas plutôt s'écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT COUNT( * ) FROM "HelpDesk"."dbo"."Fiche_Anomalie" WHERE "Fiche_Anomalie"."ANO_affecte_a" = ':Nom'
    Mais tu récupères ta variable d'où ?
    Avec cette syntaxe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT COUNT( * ) FROM "HelpDesk"."dbo"."Fiche_Anomalie" WHERE "Fiche_Anomalie"."ANO_affecte_a" = :Nom
    lorsque j’exécute la requête dans Base, celui-ci m'ouvre une boite de dialogue où je peux renseigner le nom:
    Nom : Nom.png
Affichages : 35
Taille : 4,4 Ko

    Du coup, si je rajoute les ' ' à :Nom cela ne déclenche pas l'ouverture de la boite de dialogue où je peux saisir la variable.

    Donc voilà, cela me semblait être une bonne méthode puisqu'elle fonctionne si mes données sont intégrées au fichier Base.
    Mais comme je l'explique, cela ne semble plus être le cas dès que je point via ODBC sur un serveur SQL (ma liaison ODBC est correcte car une requête avec le nom en dur fonctionne bien.)

    Donc, j'ai soit un pb de syntaxe mais je ne vois pas, soit cette méthode est propre à Base et ne peut fonctionner lorsque l'on interroge une base distante ?

  6. #6
    Membre éclairé

    Homme Profil pro
    linux, pascal, HTML
    Inscrit en
    mars 2002
    Messages
    419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Belgique

    Informations professionnelles :
    Activité : linux, pascal, HTML
    Secteur : Enseignement

    Informations forums :
    Inscription : mars 2002
    Messages : 419
    Points : 819
    Points
    819
    Billets dans le blog
    1

    Par défaut

    Citation Envoyé par Vincent74000 Voir le message
    Avec cette syntaxe:
    [cette méthode est propre à Base et ne peut fonctionner lorsque l'on interroge une base distante ?
    Je pencherais pour cette situation; pour moi ODBC gère les requêtes mais les boites de dialogues donc je créerais un formulaire pour ajouter le champ nom et éventuellement quelques lignes de basic pour envoyer la requête et récupérer le résultat; c'est juste une suggestion ..

Discussions similaires

  1. Réponses: 5
    Dernier message: 12/12/2005, 14h13
  2. Réponses: 10
    Dernier message: 26/01/2005, 20h48
  3. [CE10 Pro] Erreur Connexion SQL pour etats publiés
    Par L.nico dans le forum Connectivité
    Réponses: 1
    Dernier message: 09/12/2004, 18h16
  4. catch des erreurs dans SQL+
    Par lalystar dans le forum Oracle
    Réponses: 2
    Dernier message: 21/09/2004, 16h17
  5. message d'erreur "Microsoft SQL-DMO"
    Par tachi dans le forum MS SQL-Server
    Réponses: 3
    Dernier message: 17/08/2004, 12h47

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