![]() |
Manipuler une base de données
à partir de Visual Basic.
Correction. |
Sujet. |
Développez votre propre application.
Ce programme devra accéder à une base de données et en afficher le contenu :
Exemple sous Visual Basic fenêtré. | Exemple en génération HTML. |
---|---|
![]() |
![]() |
Correction de l'exemple sous Visual Basic fenêtré. |
Cela suppose que notre feuille dispose des contrôles suivants :
Dim db As Database
Sub Form_Load() '
Remplissage de la liste des artistes
Dim rsArtiste As RecordSet
Set db = OpenDatabase("c:\disques.mdb")
Set rsArtiste = db.OpenRecordset("select * from Artiste order by
NomA;")
LstArtistes.Clear
While not rsArtiste.eof
LstArtistes.AddItem rsArtiste("NomA")
rsArtiste.movenext
Loop
rsArtistes.Close
End Sub
Sub LstArtiste_Click()
Dim rsDisque As RecordSet
Set rsDisque = db.openrecordset("Select Titre from Disque,
Participe, Artiste where NumCD=Part_NumCD and PartNumA=NumA and Noma='"
& LstArtistes & "';")
LstDisques.Clear
While not rsDisque.eof
LstDisques.AddItem rsDisque("Titre")
rsDisque.movenext
Loop
rsDisque.Close
End Sub
Sub Form_UnLoad()
db.Close
End Sub
Correction de l'exemple : génération HTML. |
Sub main()
Dim db As Database, rsArtiste As Recordset, rsDisque as Recordset
Dim FileNum as Integer
Set db = OpenDatabase("c:\disques.mdb")
FileNum = FreeFile
Open "Mes disques.html" for Output as FileNum
Print #FileNum, "<html><head></head><body><table
border>"
Print #FileNum, "<tr><th>Artiste</th><th>Albums</th></tr>"
Set rsArtiste = db.OpenRecordset("select * from Artiste order by
NomA;")
While not rsArtiste.eof
Print #FileNum, "<tr><td>" & rsArtiste("NomA")
& "</td><td>"
rsDisque = db.openrecordset("Select * from Disque,
Participe where NumCD = Part_NumCD and Part_NumA = " & rsArtiste("NumA")
& ";")
While not rsDisque.eof
Print #FileNum, rsDisque("Titre")
& "<br>"
rsDisque.MoveNext
Wend
rsDisque.close
rsArtiste.movenext
Loop
rsArtiste.Close
db.Close
End Sub
Sébastien PASTORE.
|