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

ASP Discussion :

Problème de tri dans ma page ASP.


Sujet :

ASP

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2005
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 111
    Points : 50
    Points
    50
    Par défaut Problème de tri dans ma page ASP.
    Bonjour à tous,

    J'ai un problème de tri dans une page ASP, cela est peut être dû à des caractères spéciaux : voici un extrait de ma sortie : chaque ligne commence par "Cell:..."

    '************************************************

    Cell:CHO-K1-1F21-xCT|Cryostock:656|MOstrain:clone19|TissueSubcellSpecieVarious:

    Cell:Chondrocyte|CryostockMOstrainTissueSubcellSpecieVarious:

    Cell:CHO-PAR1|CryostockMOstrainTissueSubcellSpecieVarious:

    '************************************************
    (les smiley sont à remplacer par : Deux points, Pipe)

    On voit bien que ce n'est pas trié. Pourtant je l'ai bien précisé dans le SQL.
    Voici mon code ASP :

    '***************************************************
    <HTML>
    <%
    dim ObjConnBio_Ref
    dim RstRefBioAssay
    dim strSQL

    Const adOpenStatic = 3
    const adUseServer = 2
    Const adOpenKeyset = 1
    Const adLockOptimistic = 3
    Const adCmdText = &H0001

    'ouvre la connexion çà la base
    'initialise ObjConnBio_Ref
    set ObjConnBio_Ref = Server.CreateObject("ADODB.Connection")

    ' On construit la chaine de connexion OLE DB
    ObjConnBio_Ref.Open "Provider=msdaora;Data Source=CBIO.TEST.COM;User Id=biotest;Password=pass;"
    Set RstRefBioAssay = server.CreateObject("ADODB.Recordset")

    strSQL = "Select assay_value from bio_test where assay_type = 'BIOMATERIAL' order by assay_value"

    RstRefBioAssay.open strSQL, ObjConnBio_Ref, adOpenKeyset, adLockOptimistic, adCmdText
    %>
    <Table>
    <%do while not RstRefBioAssay.eof %>
    <TR> <TD>
    <%=RstRefBioAssay("rba_value")%>
    </td>
    </tr>
    <%
    RstRefBioAssay.movenext
    loop %>
    </table>
    </HTML>

    '*******************************************************

    Je précise qu'il s'agit d'une base Oracle et quand je lance cette requête dans TOAD, j'obtiens la liste triée.

    Pouvez-vous m'aider ?

    Merci beaucoup.

    laurent_diep.

  2. #2
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop!

    C'est peut-être particulier à Oracle (que je ne pratique pas), mais je vois que dans ton query tu sélectionnes la colonne assay_value, mais qu'ensuite, quand tu itères dans le recordset, tu affiches la colonne rba_value. Je ne comprends d'ailleurs pas que tu ne reçoives pas de message d'erreur.
    Un ascenseur est une machine qui passe quand même la moitié de son temps à descendre.

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2005
    Messages
    111
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 111
    Points : 50
    Points
    50
    Par défaut erratum...
    ryan : merci pour ta réponse.

    la différence entre les noms (dans le Select et dans l'affichage) provient du fait que j'ai voulu changer les noms de ma base de données avant de poster la question et j'ai omis de changer le dernier nom...

    Mais chez moi tout fonctionne... sauf le tri.

    laurent_diep.

  4. #4
    Membre expérimenté
    Avatar de ryan
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2003
    Messages
    956
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2003
    Messages : 956
    Points : 1 316
    Points
    1 316
    Billets dans le blog
    1
    Par défaut
    Yop!

    J'ai comme l'impression que le tri ignore le trait d'union.
    Peut-être pourrais-tu récupérer les éléments de ton recordset dans un tableau (array) et te faire ta propre routine de tri. S'il n'y a pas beaucoup d'élément, un bubble sort ferait l'affaire.
    Un ascenseur est une machine qui passe quand même la moitié de son temps à descendre.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Février 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 44
    Points : 45
    Points
    45
    Par défaut
    Bonjour,

    Pourquoi ne pas stocker dans ta base cette chaîne en double : la chaine standard et l'autre épurée de tous les caractères non alphanumériques.

    Tu n'aurais donc plus qu'à faire le tri sur la colonne en alphanumérique et afficher la colonne standard.

Discussions similaires

  1. [Débutant] probléme d'affichage d'alerte dans une page asp.net
    Par maria_info dans le forum ASP.NET
    Réponses: 1
    Dernier message: 26/10/2011, 16h38
  2. Réponses: 3
    Dernier message: 28/05/2010, 14h59
  3. Problème de lenteur requête SQL exécutée dans une page ASP
    Par Philippe Robert dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 20/01/2009, 17h38
  4. Problème d'accents dans une page asp
    Par funkycoincoin dans le forum SharePoint
    Réponses: 0
    Dernier message: 30/11/2007, 10h16
  5. probléme d'insert dans une page asp !
    Par tomtom25 dans le forum ASP
    Réponses: 5
    Dernier message: 31/03/2005, 16h04

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