Problème affichage données dans DataGrid

johann36 Messages postés 130 Date d'inscription dimanche 15 février 2004 Statut Membre Dernière intervention 9 mai 2017 - 12 août 2008 à 11:57
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 12 août 2008 à 16:02
Bonjour,
J'ai énorme soucis d'affichage avec les données de ma table dans mon DataGrid, j'ai une table qui contient environ 15000 enregistrements que j'affiche donc dans le DataGrid soucis c'est que celui-ci mais environ 30mn pour m'afficher le contenu donc je pense qu'il y a un soucis mais lequel ... ???

Ci vous pouviez m'aider à éclaircir se problème ça m'arrangerait.

Merci d'avance à tous.

Mon code :

        'Chaîne de connexion à la BDD
        Dim SqlConn As String = "Driver=Firebird/InterBase(r) driver;Server=localhost;" + _
        "Database=localhost:CheminBDD;Uid=SYSDBA;Pwd=masterkey;"

        'Outil de connexion à BDD
        Dim myDA As New Odbc.OdbcConnection(SqlConn)

        'Ouverture de la BDD
        Try
            myDA.Open()
        Catch ex As Exception
            MsgBox("Erreur de connection à la BDD !" + _
            Chr(13) + Chr(13) + "Détails :" + Chr(13) + ex.Message(), MsgBoxStyle.Critical, "Fluox")
            Exit Sub
        End Try

        Dim ReqSQL = "SELECT * FROM " & Me.CMB_TABLE.Text

        'Table de données en mémoire
        Dim adapter As New Odbc.OdbcDataAdapter(ReqSQL, myDA)

        'Création de l'objet Dataset :
        Dim DataSet As New DataSet

        Try
            'Chargement des données dans la table adapter
            adapter.Fill(DataSet, Me.CMB_TABLE.Text)

            Me.DataGrid.DataSource = dt

        Catch ex As Exception
            MsgBox("Erreur de chargement des données !" + Chr(13) + Chr(13) + "Détails :" _
            + Chr(13) + ex.Message(), MsgBoxStyle.Critical, "Fluox")
            Exit Sub
        End Try

    End Sub

Johann36

8 réponses

gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
12 août 2008 à 13:27
as tu vraiment besoin d'afficher les 15000 enregistrements d'un seul coup?

Bonjour chez vous !
0
johann36 Messages postés 130 Date d'inscription dimanche 15 février 2004 Statut Membre Dernière intervention 9 mai 2017
12 août 2008 à 13:47
Bonjour gillardg,

Malheureusement non, je suis obligé d'afficher les 15 000 enregistrements (j'ai pas le choix, enfin du moins on ne me l'a pas laissé).
Je ne sais pas comment faire pour palier à ce problème car 30mn pour afficher 15 000 enregistrements c'est de la folie !!!

En parallèle j'utilise un logiciel qui ce nomme "Fb Export" qui me permet d'ouvrir une BDD *.gdb (la mienne entre autre), je peux ainsi faire la comparaison du contenu des données de la table pour savoir si ce que j'ai fait est ok. Quelle est la relation avec mon problème ? C'est que ce logiciel pour afficher 15 000 enregistrements met environ 2s donc il y a pas photo entre mon appli et le logiciel.

Encore une fois malheureusement je ne peux pas me servir de ce logiciel pour faire ce que j'ai besoin.

Merci de m'aider.

Johann36
0
gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
12 août 2008 à 14:05
en fait le logiciel ne met dans la grille que 2 ou 3 pages écran c'est pour cela


" qu'il vas plus vite "  il n'y a pas de miracles










Bonjour chez vous !
0
johann36 Messages postés 130 Date d'inscription dimanche 15 février 2004 Statut Membre Dernière intervention 9 mai 2017
12 août 2008 à 14:32
C'est à dire ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
12 août 2008 à 14:38
je ne sais pas vraiment mais en y reflechissant un peu ....
2 variables avec les numéros de lignes
les scrollbar...
if scroll_down then


afficher une page


end if     ??????????????

Bonjour chez vous !
0
johann36 Messages postés 130 Date d'inscription dimanche 15 février 2004 Statut Membre Dernière intervention 9 mai 2017
12 août 2008 à 15:27
Ok super !

Est-ce que tu connais par contre la requête qui permet par exemple de séléctionner les 100 premiers enregistrements tout en sachant que je ne connais pas le nom des champs donc en utilisant "*" ?

Je sais qu'il existe la fonction TOP mais il faut lui affecter un champs et moi c'est pas possible.
0
gillardg Messages postés 3275 Date d'inscription jeudi 3 avril 2008 Statut Membre Dernière intervention 14 septembre 2014 2
12 août 2008 à 15:37
non je ne sais pas mais pose ta question sur http://www.sqlfr.com/
qui est le site réservé au SQL dans codes-sources, tu auras plus de chances d'avoir une réponse rapide

Bonjour chez vous !
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
12 août 2008 à 16:02
salut,

c'est LIMIT mais çà n'a aucun rapport ici
ce n'est pas un problème de requête mais de dessin, comme le disait gillardg

il ne faut pas refaire la requête à chaque mouvement de scroll, il faut regarder dans les propriétés de la grid...

++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp  
0
Rejoignez-nous