Vb6&sql
Fermé
ingstat
Messages postés
49
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
10 septembre 2008
-
26 août 2008 à 12:16
ingstat Messages postés 49 Date d'inscription vendredi 15 août 2008 Statut Membre Dernière intervention 10 septembre 2008 - 27 août 2008 à 08:29
ingstat Messages postés 49 Date d'inscription vendredi 15 août 2008 Statut Membre Dernière intervention 10 septembre 2008 - 27 août 2008 à 08:29
A voir également:
- Vb6&sql
- Vb6 - Télécharger - Divers Utilitaires
- Sql server recovery - Télécharger - Gestion de données
- Logiciel sql - Télécharger - Bases de données
- Sql pix - Forum Python
- Dupliquer une table sql ✓ - Forum Programmation
2 réponses
Tatanos
Messages postés
966
Date d'inscription
lundi 24 mars 2008
Statut
Membre
Dernière intervention
26 mai 2016
156
26 août 2008 à 12:36
26 août 2008 à 12:36
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 !
ingstat
Messages postés
49
Date d'inscription
vendredi 15 août 2008
Statut
Membre
Dernière intervention
10 septembre 2008
27 août 2008 à 08:29
27 août 2008 à 08:29
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
26 août 2008 à 12:41
c'est vraiment gentil de ta part.
je vais essayer ce code.
26 août 2008 à 12:53
"""""""""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