Vous êtes sur la page 1sur 6

ISI-L2FSI 2017/2018 TD 3:ACCES AUX BASES DE DONNEES

TD 3 : ACCES AUX BASES DE DONNEES


OBJECTIFS :
Apprendre la manipulation des bases de données avec Vb.Net telle que l’accès aux données d’une
base de données Access.

 Créer un nouveau projet nommé TP5.

 Soit le Modèle relationnel suivant d’une base de données de gestion des factures pour des clients,
créer sous Access, la base de données correspondante appelée base.mdb dans le répertoire source
de votre projet:

 Ajouter dans votre projet un Module de connexion appelé MdConnexion.

 En tête du module, il faut importer l'espace de nom correspondant à OleDB.

Imports System.Data.OleDb

 Déclarer dans le module l’objet de connexion suivant :

Public cnx As New OleDbConnection()

 Ajouter la procédure de connexion suivante :


Public Sub connection(ByVal nombd As String)
On Error GoTo erreur
cnx.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;
Data source=" & nombd
cnx.Open()
Exit Sub
erreur:
MsgBox(Err.Description)
End Sub

Amen Ben Hadj Ali 1


ISI-L2FSI 2017/2018 TD 3:ACCES AUX BASES DE DONNEES

 Ajouter la procédure de déconnection suivante :

Public Sub deconnection()


On Error GoTo erreur
cnx.Close()
Exit Sub
erreur:
MsgBox(Err.Description)
End Sub
 Ajouter l’interface principale suivante :

 Appeler la procédure de connexion avec la base dès le démarrage de l’application en fixant le


chemin de votre base de données :

MdConnexion.connection("C:\MesProjets\TP5\base.mdb")

 Ajouter l’interface suivante permettant d’ajouter un client à la base :

2
Amen Ben Hadj Ali
ISI-L2FSI 2017/2018 TD 3:ACCES AUX BASES DE DONNEES

 Déclarer dans le module de connexion l’objet de Commande suivant :

Public cmd As New OleDbCommand()

 Ajouter dans la procédure de connexion l’instruction suivante, permettant d’associer la commande


à la connexion cnx :

cmd.Connection = cnx

 Exécuter la requête suivante au niveau du bouton Ajouter:

On Error GoTo erreur


Dim requete As String
requete = "insert into Client
(CodeClient,NomClient,PrenomClient,Adresse, Telephone) values ('" +
txtcode.Text + "','" + txtNom.Text + "','" + txtprenom.Text + "','"
+ txtAdresse.Text + "','" + txtTel.Text + "')"
If MsgBox("Voulez vous vraiment ajouter ce Client ?",
MsgBoxStyle.YesNo, "Ajout d'un client") = MsgBoxResult.Yes Then
cmd.CommandText = requete
cmd.ExecuteReader()
end if
Exit Sub
erreur:
MsgBox(Err.Description, MsgBoxStyle.Critical, "Erreur")

 Ajouter l’interface suivante permettant d’ajouter un fournisseur à la base :

 Déclarer dans le module de connexion l’objet de DataReader suivant :

Public dRead As OleDbDataReader

 Ajouter l’interface suivante permettant d’ajouter un produit :


3

Amen Ben Hadj Ali


ISI-L2FSI 2017/2018 TD 3:ACCES AUX BASES DE DONNEES

Liste des
fournisseurs chargée
à partir de la table

 Ajouter ce code pendant le démarrage de l’interface pour charger la liste des fournisseurs dans le
Combobox a l’aide du DataReader dread:

cmd.CommandText = "select * from Fournisseur"


dread = cmd.ExecuteReader()
ComboBox1.Items.Clear() C’est le Combobox
ComboBox2.Items.Clear() affiché à l’interface
Do While dread.Read()
ComboBox1.Items.Add(dread(1) & " - " & dread(2))
ComboBox2.Items.Add(dread(0))
Loop
dread.Close() C’est le Combobox
caché et utilisé par la
 La requête d’insertion :
requête d’insertion
requete = "insert into Produit values ('" + txtcode.Text + "','" +
txtNom.Text + "'," + txtprix.Text + "," + txtqt.Text + ",'" +
CStr(ComboBox2.Items(ComboBox1.SelectedIndex)) + "')"
NB :
Dans la requête SQL on utilise :
 '" + objet + "': Si l’objet porte une information de type string ou bien date.
 " + objet + ": Si l’objet porte une information de type numérique.
 Déclarer dans le module de connexion l’objet de DataAdapter suivant :

Public Adapt As New OleDbDataAdapter() 4

 Déclarer dans le module de connexion l’objet de DataSet suivant :

Public dset As New DataSet()

 Créer l’interface suivante permettant d’afficher la liste des Clients:

Amen Ben Hadj Ali


ISI-L2FSI 2017/2018 TD 3:ACCES AUX BASES DE DONNEES

DataGrid

 Ajouter ce code pendant le démarrage de l’interface pour charger les clients :


cmd.CommandText = "select * from Client"
Adapt.SelectCommand = cmd
dset.Clear()
Adapt.Fill(dset, "Client")
DataGrid1.DataSource = dset.Tables(0)
 Le bouton Supprimer permet de supprimer la ligne sélectionnée, le code du client dans le
DataGrid est :
DataGrid1.Item(DataGrid1.CurrentRowIndex, 0).ToString
 Préparer la commande de suppression et l’affecter a l’objet DataAdapter :
Adapt.DeleteCommand = cmd
Adapt.DeleteCommand.ExecuteReader()
 Le bouton Modifier permet de modifier les données de la ligne sélectionnée.
cmd.CommandText = "update Client set nomClient = '" +
DataGrid1.Item(DataGrid1.CurrentRowIndex, 1).ToString + "' where
codeClient ='" + DataGrid1.Item(DataGrid1.CurrentRowIndex, 0).ToString +
"'"
Adapt.UpdateCommand = cmd
Adapt.Update(dset.Tables(0))
 Créer l’interface suivante permettant d’afficher la liste des Clients:
5

Amen Ben Hadj Ali


ISI-L2FSI 2017/2018 TD 3:ACCES AUX BASES DE DONNEES

Critères de
sélection des
factures

Choix par
Client de la
Facture

Choix par
Date de la
Facture

Amen Ben Hadj Ali

Vous aimerez peut-être aussi