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

VBA Access Discussion :

[AC-2007] recordset ne retournant que la derniere ligne pour un varchar contenant des vbcrlf


Sujet :

VBA Access

  1. #1
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 42
    Points : 48
    Points
    48
    Par défaut [AC-2007] recordset ne retournant que la derniere ligne pour un varchar contenant des vbcrlf
    Bonjour

    Je stocke du contenu de fichier texte dans un varchar(max) sur un 2008 R2 lié en ODBC
    Pas de soucis pour stocker :
    je fais un insert avec comme valeur : Join(MonArray, vbCrLf)
    - MonArray est une variable tableau texte contenant les lignes de mon fichier texte -

    Sous SQL server 2008 R2, le texte est correctement stocké
    Si je fais un copier coller depuis l'interface graphique du serveur directement dans le bloc note
    Je retrouve bien mon fichier texte identique

    Par contre, si j'essaye de recuperer ce texte avec un recordset (DAO ou ADO) dans mon VBA Access,
    il ne me retrourne que la derniere ligne !
    En fait, il renvoi un bout de l'avant derniere ligne + la derniere ligne
    il me retourne un string de 163 caractères
    (J'attends environ 7000 caracteres)

    Connaissez vous la raison de ce comportement ?
    Y a t il un moyen simple de procéder sans changer mes definitions de table ?

    Merchi !

    Antoine qui sèche la...

  2. #2
    Membre du Club
    Inscrit en
    Mars 2008
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 42
    Points : 48
    Points
    48
    Par défaut
    En faisant des tests, le type de données ne change rien
    varchar(8000), varchar(max), text

    Ce qui change, c'est le SQL de ma requete...

    En fait, c'est le DISTINCT....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set rst = codeDB.openrecordset("SELECT Contenu FROM MaTable" , dbopenforwardonly, dbreadonly)
    => C'est OK, len(rst(0)) = 6500

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    set rst = codeDB.openrecordset("SELECT DISTINCT Contenu FROM MaTable"   , dbopenforwardonly, dbreadonly)
    => C'est KO, len(rst(0)) = 163


    J'aurais pu m'en douter...

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

Discussions similaires

  1. [MySQL] Requête qui ne retourne que la première ligne
    Par CYRIAQU3 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 13/10/2014, 16h37
  2. [RegEx] Mon regex ne retourne que le premier et dernier match
    Par Babas007 dans le forum Langage
    Réponses: 15
    Dernier message: 12/11/2013, 15h16
  3. [Oracle] PHP ne retourne que la dernière ligne d'un resultat d'une procedure stockée ORACLE
    Par tytous dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 08/06/2010, 07h57
  4. Ne retourner que la "meilleure" valeur pour chaque jour
    Par Drakkhen dans le forum Langage SQL
    Réponses: 6
    Dernier message: 27/03/2009, 17h03
  5. Réponses: 3
    Dernier message: 10/10/2006, 08h26

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