Vb6&sql
ingstat
Messages postés
49
Date d'inscription
Statut
Membre
Dernière intervention
-
ingstat Messages postés 49 Date d'inscription Statut Membre Dernière intervention -
ingstat Messages postés 49 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai un problèmme dans l'affichage des résultats d'une requêtte SQL dans un controle DataGrid sur VB6..
Merci de m'aider
j'ai un problèmme dans l'affichage des résultats d'une requêtte SQL dans un controle DataGrid sur VB6..
Merci de m'aider
A voir également:
- Vb6&sql
- Vb6 - Télécharger - Divers Utilitaires
- Logiciel sql - Télécharger - Bases de données
- Requete sql pix - Forum PHP
- Additions et multiplication dans des requêtes SQL ✓ - Forum MySQL
- Sql query download - Télécharger - Gestion de données
2 réponses
Pour Access :
'-----------------------------------------------------------------------------------------------------------------------------
Public DB As Database 'Tu définis ta variable pour la base de données
Private RS As Recordset 'Tu définis un Recordset (plage de mémoire sous forme de tableau pour stoquer le résultat de la requete SQL)
Private Sub Form_Load()
Set DB = OpenDatabase("C:\base.mdb") 'Tu ouvres la base de données
Set RS = DB.OpenRecordset("SELECT * FROM Table") 'Tu stoque ta requete dans le recordset
If RS_RETARD.EOF = False Then 'Tu testes si le RS contiens des données
RS.MoveLast ' Fin du RS
RS.MoveFirst ' Début du RS (VB ne connais pas le nombre de lignes du tableau tant qu'il n'a pas été parcouru, après ceci on peut donc compter le nombre de lignes)
NombreLigneRS = RS.RecordCount 'Nombre de lignes
Else
nb_ret = 0
End If
'Ensuite tu n'as plus qu'a remplir le GRID avec les données du RS
For I = 1 To RS.RecordCount
GRID.AddItem (Fields(0) & Chr(9) & Fields(1) & Chr(9) & RS1.Fields(2))
RS1.MoveNext
GRID.RowHeight(I) = 300
Next
un Recordset à un curseur, il est positionné d'origine sur la 1ere ligne donc Fields(0) correspond a la 1ere colonne de ton RS, Fields(1) à la seconde... etc tu as une colonne par champs de ta requete
pour passer a la seconde ligne ce n'est pas comme un tableau ou tu précise par exmple Tableau(1, 5)
tu utilise le curseur.
pour le faire bouger d'une ligne vers le bas : RS.MoveNext,
pour le faire remonter d'une ligne : RS.MovePrevious,
pour le faire passer sur la dernière ligne : RS.MoveLast
et pour la première ligne : RS.MoveFirst
le Chr(9) dans le grid sert à passer à la cellule de droite.
J'espère avoir été assez clair :) bon courage !
'-----------------------------------------------------------------------------------------------------------------------------
Public DB As Database 'Tu définis ta variable pour la base de données
Private RS As Recordset 'Tu définis un Recordset (plage de mémoire sous forme de tableau pour stoquer le résultat de la requete SQL)
Private Sub Form_Load()
Set DB = OpenDatabase("C:\base.mdb") 'Tu ouvres la base de données
Set RS = DB.OpenRecordset("SELECT * FROM Table") 'Tu stoque ta requete dans le recordset
If RS_RETARD.EOF = False Then 'Tu testes si le RS contiens des données
RS.MoveLast ' Fin du RS
RS.MoveFirst ' Début du RS (VB ne connais pas le nombre de lignes du tableau tant qu'il n'a pas été parcouru, après ceci on peut donc compter le nombre de lignes)
NombreLigneRS = RS.RecordCount 'Nombre de lignes
Else
nb_ret = 0
End If
'Ensuite tu n'as plus qu'a remplir le GRID avec les données du RS
For I = 1 To RS.RecordCount
GRID.AddItem (Fields(0) & Chr(9) & Fields(1) & Chr(9) & RS1.Fields(2))
RS1.MoveNext
GRID.RowHeight(I) = 300
Next
un Recordset à un curseur, il est positionné d'origine sur la 1ere ligne donc Fields(0) correspond a la 1ere colonne de ton RS, Fields(1) à la seconde... etc tu as une colonne par champs de ta requete
pour passer a la seconde ligne ce n'est pas comme un tableau ou tu précise par exmple Tableau(1, 5)
tu utilise le curseur.
pour le faire bouger d'une ligne vers le bas : RS.MoveNext,
pour le faire remonter d'une ligne : RS.MovePrevious,
pour le faire passer sur la dernière ligne : RS.MoveLast
et pour la première ligne : RS.MoveFirst
le Chr(9) dans le grid sert à passer à la cellule de droite.
J'espère avoir été assez clair :) bon courage !
Bonjour,
je cherche à afficher le résultat d'une requette sql dans un controle datagrid.
je ne vois pas comment déclarer "datagrid1" dans le code suivant:
Private Sub Command6_Click()
Dim rst As New ADODB.Recordset
Dim rst1 As New ADODB.Recordset
Dim sql As String
If rst.State = adStateOpen Then rst.Close
rst.Open " T1", DB, adOpenDynamic, adLockOptimistic
sql = "Select* From T1 where Numero Affaire between d and f"
If rst1.State = adStateOpen Then rst1.Close
rst1.Open sql, DB, adOpenDynamic, adLockOptimistic
Set Datagrid.DataSource = rst1
End Sub
Merci
je cherche à afficher le résultat d'une requette sql dans un controle datagrid.
je ne vois pas comment déclarer "datagrid1" dans le code suivant:
Private Sub Command6_Click()
Dim rst As New ADODB.Recordset
Dim rst1 As New ADODB.Recordset
Dim sql As String
If rst.State = adStateOpen Then rst.Close
rst.Open " T1", DB, adOpenDynamic, adLockOptimistic
sql = "Select* From T1 where Numero Affaire between d and f"
If rst1.State = adStateOpen Then rst1.Close
rst1.Open sql, DB, adOpenDynamic, adLockOptimistic
Set Datagrid.DataSource = rst1
End Sub
Merci
c'est vraiment gentil de ta part.
je vais essayer ce code.
"""""""""Dim sql As String
Dim rst1 As New Recordset
sql = "Select* From T1 where Numero Affaire between d and f"
If rst1.State = adStateOpen Then rst1.Close
rst1.Open sql, db, adOpenDynamic, adLockOptimistic
Set datagrid1.DataSource = rst1
Lorsque je compile.le meesage suivant s'affiche :
"variable non definit"
je vois pas comment definir la variable datagrid1
Merci