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 :

[TIBSQL] Problème de récupération d'un champs


Sujet :

Bases de données Delphi

  1. #1
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 36
    Points : 31
    Points
    31
    Par défaut [TIBSQL] Problème de récupération d'un champs
    Bonjour,

    J'atilise un TIBSQL pour effectuer une requête. Cette requête marche (testée dans IBExpert) et retourne 4 champs.

    Je fait donc une boucle pour récupérer les champs avec la commande :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FSQL.Current.Vars[iChamps].AsString;
    Pour tout les champs ça marche sauf pour ceux qui sont de type VARCHAR, ce qui est le cas du deuxième champs. Cela ce traduit par une violation d'accès en 00000000.

    Je vois pas pourquoi il y a une différence entre les autres types et VARCHAR ?

    Est-ce que quelqu'un à déjà rencontré ce problème ?

    Merci d'avance.

  2. #2
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 903
    Points : 6 027
    Points
    6 027
    Par défaut
    La variable qui reçoit le champ varchar est déclarée comment ?
    "Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
    -----------------------
    Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
    Usus magister est optimus

  3. #3
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 36
    Points : 31
    Points
    31
    Par défaut
    C'est une string. Le problème vient pas de la variable qui reçoit le champs mais plutot le champs lui même car en mode debug quand je fait une évaluation de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FSQL.Current.Vars[1].AsString;
    c'est la qu'il me fait une violation d'accès.

  4. #4
    Expert éminent
    Avatar de qi130
    Homme Profil pro
    Expert Processus IT
    Inscrit en
    Mars 2003
    Messages
    3 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Expert Processus IT
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2003
    Messages : 3 903
    Points : 6 027
    Points
    6 027
    Par défaut
    As-tu essayé en "assignant" les champs retournés
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    FSQL.FieldByName('xxx') / ByIndex[n].AsString
    ?
    "Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet)
    -----------------------
    Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MP
    Usus magister est optimus

  5. #5
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 36
    Points : 31
    Points
    31
    Par défaut
    Je viens d'essayer ce que tu m'as suggéré. Même punition !

  6. #6
    Nouveau membre du Club
    Inscrit en
    Octobre 2002
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Octobre 2002
    Messages : 36
    Points : 31
    Points
    31
    Par défaut
    Je viens de trouver l'erreur... Vu que mon TIBSQL est dans une dll, il doit y avoir une erreur d'allocation de mémoire.

    La différence vient du fait que les autres types de champs était de longueur fixe alors que VARCHAR est de longueur variable.

    J'ai plus qu'a trouver l'erreur...

    Merci à toi pour ton aide...

  7. #7
    Futur Membre du Club
    Inscrit en
    Mars 2003
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 5
    Points : 5
    Points
    5
    Par défaut
    j ai lu quelque part qu'il faut preferer les blob au varchar ca les varchar au niveau des requetes sont considéré comme des champs de 32000 char alors que les blobs ont une taille assignées

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

Discussions similaires

  1. Problème de récupération avec un champ date
    Par yannick63 dans le forum VBA Access
    Réponses: 3
    Dernier message: 27/01/2010, 17h34
  2. problème de récupération d'un champ du datagrid
    Par ecko772 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 28/05/2008, 12h18
  3. Problème de récupération de champs dans une DW
    Par SandraG dans le forum Powerbuilder
    Réponses: 3
    Dernier message: 27/11/2007, 12h08
  4. Session problème de récupération d'un champ
    Par dunbar dans le forum Langage
    Réponses: 6
    Dernier message: 13/07/2006, 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