Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 26/01/2007, 12h27   #1
Membre régulier
 
Inscription : décembre 2005
Messages : 177
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : décembre 2005
Messages : 177
Points : 85
Points : 85
Par défaut Procédure stockée, accès au champ du recordset dans un certain ordre ?

Bonjour,

J'ai une procédure stockée qui effectue un select de 4 champs sur une table ; dans mon code j'execute cette procédure stockée et je récupère le recordset qui en résulte.

Le problème c'est que je n'arrive à lire mes champs que dans un certains ordre.
Je m'explique, mon select c'est globalement :
SELECT champ1,champ2,champ3,champ4 FROM MaTable

Si je lis les champ1, champ2, champ3 et champ4 exactement dans l'odre de selection ca ne pause aucun problème ; par contre si je lis le champ4 en premier je perds le contenu du champ3 (qui est de type nText).

Avez vous une idée de la cause de ce problème et comment je peux le résoudre ?

Merci
Matth_S est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/01/2007, 21h12   #2
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 849
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 849
Points : 5 965
Points : 5 965
Salut,

Je suis un peu étonné. Est-ce que tu peux nous montrer comment tu ouvres ton recordset?

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2007, 12h08   #3
Membre régulier
 
Inscription : décembre 2005
Messages : 177
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : décembre 2005
Messages : 177
Points : 85
Points : 85
En fait j'ai l'impression que ça n'est pas du à la procédure stockée elle même mais que c'est uniquement du au champ nText.
J'ai ce problème uniquement avec le champ nText, du coup j'ai cherché une erreur possible de ce coté et j'ai trouvé "Pourquoi mon champ memo/text ne s'affiche pas le deuxième fois ?" dans les FAQ ; je me demande si ça n'est pas aussi pour ça que je ne peux pas accéder à mon champ nText (surtout que l'une des solutions est "Utilisez les champs dans l'ordre dans lequel vous les avez défini dans la requête", c'est exactement l'ordre de selection qui me pose problème).
Qu'en penses tu ?

Merci pour ta réponse en tous cas !
Matth_S est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2007, 12h48   #4
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 849
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 849
Points : 5 965
Points : 5 965
On ne peut pas trier sur un champs nText. Il faut caster:
Code :
CAST(TABLE.CHAMPS AS VARCHAR(150)) AS NOM
A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/01/2007, 14h43   #5
Membre régulier
 
Inscription : décembre 2005
Messages : 177
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : décembre 2005
Messages : 177
Points : 85
Points : 85
C'est bon à savoir ! En fait je parlais d'ordre de selection non pas dans une clause order by, mais l'odre de selection des différent champ (champ1 avant champ2 etc) ; car c'est ça qui me pose problème avec mon champ nText. Cela dit je ne savais qu'un order by sur un champ nText nécessitait un cast, donc merci pour l'info

Je pense que j'ai résolu mon problème (je stocke directement dans une variable la valeur de mon champ nText comme conseillé dans les FAQ).

Merci encore pour ton aide !
Matth_S est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h25.


 
 
 
 
Partenaires

Hébergement Web