Ce guide explique étape par étape comment ouvrir une base de données Access 2010 (.accdb) dans VB.NET en utilisant ADO.NET.
System.Data.OleDb
est ajoutée à votre projet.Voici un exemple simple pour ouvrir une connexion à une base de données Access.
Imports System.Data.OleDb
Module Module1
Sub Main()
' Chemin vers le fichier Access (.accdb)
Dim cheminBase As String = "C:\Chemin\Vers\VotreBase.accdb" ' Modifiez avec le chemin de votre fichier
' Chaîne de connexion pour Access 2010 et plus
Dim chaineConnexion As String = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={cheminBase};Persist Security Info=False;"
' Créer une connexion à la base
Using connexion As New OleDbConnection(chaineConnexion)
Try
' Ouvrir la connexion
connexion.Open()
Console.WriteLine("Connexion réussie à la base de données !")
' Exemple de requête SQL pour lire des données
Dim requete As String = "SELECT * FROM VotreTable" ' Remplacez "VotreTable" par le nom de votre table
' Exécuter la commande
Using commande As New OleDbCommand(requete, connexion)
Using lecteur As OleDbDataReader = commande.ExecuteReader()
While lecteur.Read()
' Lire et afficher les données
Console.WriteLine(lecteur("NomColonne")) ' Remplacez "NomColonne" par le nom d'une colonne
End While
End Using
End Using
Catch ex As Exception
' Gérer les erreurs
Console.WriteLine("Erreur : " & ex.Message)
Finally
' Fermer la connexion
connexion.Close()
Console.WriteLine("Connexion fermée.")
End Try
End Using
' Pause pour voir les résultats
Console.ReadLine()
End Sub
End Module
Microsoft.ACE.OLEDB.12.0
pour les fichiers Access 2010 et plus."C:\Chemin\Vers\VotreBase.accdb"
par le chemin de votre fichier Access."SELECT * FROM VotreTable"
pour interroger les données que vous souhaitez afficher.ExecuteReader
permet de lire les données ligne par ligne dans la table.Vous pouvez insérer des données dans la base Access en utilisant une requête SQL INSERT
.
Dim requeteInsertion As String = "INSERT INTO VotreTable (Colonne1, Colonne2) VALUES ('Valeur1', 'Valeur2')"
' Remplacez "VotreTable", "Colonne1", "Colonne2", et les valeurs par vos données
Using commande As New OleDbCommand(requeteInsertion, connexion)
commande.ExecuteNonQuery()
Console.WriteLine("Données insérées avec succès !")
End Using
Jet OLEDB:Database Password=VotreMotDePasse;
Provider not registered
, installez le runtime Microsoft Access Database Engine.Lors de l’exécution :
Voici un exemple combinant lecture et insertion.
Imports System.Data.OleDb
Module Module1
Sub Main()
Dim cheminBase As String = "C:\Chemin\Vers\VotreBase.accdb"
Dim chaineConnexion As String = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={cheminBase};Persist Security Info=False;"
Using connexion As New OleDbConnection(chaineConnexion)
Try
connexion.Open()
Console.WriteLine("Connexion réussie à la base de données.")
' Lire les données
Dim requeteLecture As String = "SELECT * FROM VotreTable"
Using commandeLecture As New OleDbCommand(requeteLecture, connexion)
Using lecteur As OleDbDataReader = commandeLecture.ExecuteReader()
Console.WriteLine("Données actuelles :")
While lecteur.Read()
Console.WriteLine(lecteur("NomColonne")) ' Remplacez "NomColonne" par votre colonne
End While
End Using
End Using
' Insérer des données
Dim requeteInsertion As String = "INSERT INTO VotreTable (Colonne1, Colonne2) VALUES ('NouvelleValeur1', 'NouvelleValeur2')"
Using commandeInsertion As New OleDbCommand(requeteInsertion, connexion)
commandeInsertion.ExecuteNonQuery()
Console.WriteLine("Nouvelle ligne insérée.")
End Using
Catch ex As Exception
Console.WriteLine("Erreur : " & ex.Message)
Finally
connexion.Close()
Console.WriteLine("Connexion fermée.")
End Try
End Using
Console.ReadLine()
End Sub
End Module
Avec ce guide, vous pouvez ouvrir, lire et manipuler une base de données Access 2010 avec VB.NET.
Voici quelques exemples pratiques pour travailler avec une base de données Access 2010 (.accdb) en VB.NET. Ces exemples couvrent différentes opérations comme l’ouverture, la lecture, l’insertion, la mise à jour et la suppression de données.
Imports System.Data.OleDb
Module Module1
Sub Main()
' Chemin vers le fichier Access
Dim cheminBase As String = "C:\Chemin\Vers\VotreBase.accdb"
Dim chaineConnexion As String = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={cheminBase};Persist Security Info=False;"
Using connexion As New OleDbConnection(chaineConnexion)
Try
connexion.Open()
Console.WriteLine("Connexion réussie.")
' Lire les données de la table "Clients"
Dim requete As String = "SELECT * FROM Clients"
Using commande As New OleDbCommand(requete, connexion)
Using lecteur As OleDbDataReader = commande.ExecuteReader()
While lecteur.Read()
Console.WriteLine($"ID: {lecteur("ID")}, Nom: {lecteur("Nom")}, Prénom: {lecteur("Prénom")}")
End While
End Using
End Using
Catch ex As Exception
Console.WriteLine("Erreur : " & ex.Message)
Finally
connexion.Close()
End Try
End Using
Console.ReadLine()
End Sub
End Module
Imports System.Data.OleDb
Module Module1
Sub Main()
' Chemin vers le fichier Access
Dim cheminBase As String = "C:\Chemin\Vers\VotreBase.accdb"
Dim chaineConnexion As String = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={cheminBase};Persist Security Info=False;"
Using connexion As New OleDbConnection(chaineConnexion)
Try
connexion.Open()
Console.WriteLine("Connexion réussie.")
' Ajouter une nouvelle ligne dans la table "Clients"
Dim requete As String = "INSERT INTO Clients (Nom, Prénom, Email) VALUES ('Dupont', 'Jean', 'jean.dupont@example.com')"
Using commande As New OleDbCommand(requete, connexion)
Dim lignesAffectees As Integer = commande.ExecuteNonQuery()
Console.WriteLine($"Nombre de lignes insérées : {lignesAffectees}")
End Using
Catch ex As Exception
Console.WriteLine("Erreur : " & ex.Message)
Finally
connexion.Close()
End Try
End Using
Console.ReadLine()
End Sub
End Module
Imports System.Data.OleDb
Module Module1
Sub Main()
' Chemin vers le fichier Access
Dim cheminBase As String = "C:\Chemin\Vers\VotreBase.accdb"
Dim chaineConnexion As String = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={cheminBase};Persist Security Info=False;"
Using connexion As New OleDbConnection(chaineConnexion)
Try
connexion.Open()
Console.WriteLine("Connexion réussie.")
' Mettre à jour l'email d'un client spécifique
Dim requete As String = "UPDATE Clients SET Email = 'nouveau.email@example.com' WHERE ID = 1"
Using commande As New OleDbCommand(requete, connexion)
Dim lignesAffectees As Integer = commande.ExecuteNonQuery()
Console.WriteLine($"Nombre de lignes mises à jour : {lignesAffectees}")
End Using
Catch ex As Exception
Console.WriteLine("Erreur : " & ex.Message)
Finally
connexion.Close()
End Try
End Using
Console.ReadLine()
End Sub
End Module
Imports System.Data.OleDb
Module Module1
Sub Main()
' Chemin vers le fichier Access
Dim cheminBase As String = "C:\Chemin\Vers\VotreBase.accdb"
Dim chaineConnexion As String = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={cheminBase};Persist Security Info=False;"
Using connexion As New OleDbConnection(chaineConnexion)
Try
connexion.Open()
Console.WriteLine("Connexion réussie.")
' Supprimer un client par ID
Dim requete As String = "DELETE FROM Clients WHERE ID = 2"
Using commande As New OleDbCommand(requete, connexion)
Dim lignesAffectees As Integer = commande.ExecuteNonQuery()
Console.WriteLine($"Nombre de lignes supprimées : {lignesAffectees}")
End Using
Catch ex As Exception
Console.WriteLine("Erreur : " & ex.Message)
Finally
connexion.Close()
End Try
End Using
Console.ReadLine()
End Sub
End Module
Les paramètres sont essentiels pour éviter les attaques par injection SQL et pour rendre votre code plus dynamique.
Imports System.Data.OleDb
Module Module1
Sub Main()
' Chemin vers le fichier Access
Dim cheminBase As String = "C:\Chemin\Vers\VotreBase.accdb"
Dim chaineConnexion As String = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={cheminBase};Persist Security Info=False;"
Using connexion As New OleDbConnection(chaineConnexion)
Try
connexion.Open()
Console.WriteLine("Connexion réussie.")
' Ajouter un nouveau client avec des paramètres
Dim requete As String = "INSERT INTO Clients (Nom, Prénom, Email) VALUES (@Nom, @Prenom, @Email)"
Using commande As New OleDbCommand(requete, connexion)
commande.Parameters.AddWithValue("@Nom", "Martin")
commande.Parameters.AddWithValue("@Prenom", "Paul")
commande.Parameters.AddWithValue("@Email", "paul.martin@example.com")
Dim lignesAffectees As Integer = commande.ExecuteNonQuery()
Console.WriteLine($"Nombre de lignes insérées : {lignesAffectees}")
End Using
Catch ex As Exception
Console.WriteLine("Erreur : " & ex.Message)
Finally
connexion.Close()
End Try
End Using
Console.ReadLine()
End Sub
End Module
Imports System.Data.OleDb
Module Module1
Sub Main()
' Chemin vers le fichier Access
Dim cheminBase As String = "C:\Chemin\Vers\VotreBase.accdb"
Dim chaineConnexion As String = $"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={cheminBase};Persist Security Info=False;"
Using connexion As New OleDbConnection(chaineConnexion)
Try
connexion.Open()
Console.WriteLine("Connexion réussie.")
' Rechercher un client par nom
Dim requete As String = "SELECT * FROM Clients WHERE Nom = @Nom"
Using commande As New OleDbCommand(requete, connexion)
commande.Parameters.AddWithValue("@Nom", "Dupont")
Using lecteur As OleDbDataReader = commande.ExecuteReader()
While lecteur.Read()
Console.WriteLine($"ID: {lecteur("ID")}, Nom: {lecteur("Nom")}, Prénom: {lecteur("Prénom")}")
End While
End Using
End Using
Catch ex As Exception
Console.WriteLine("Erreur : " & ex.Message)
Finally
connexion.Close()
End Try
End Using
Console.ReadLine()
End Sub
End Module
Ces exemples montrent comment :
Dans le secteur du textile comme dans l’industrie, la fiche technique produit est un outil…
Apprendre à utiliser correctement l’imparfait et le passé composé est l’un des plus grands défis…
Apprendre le français peut parfois être un vrai défi, surtout quand il faut choisir entre…
La proposition subordonnée relative est une composante essentielle de la phrase complexe en français. Elle…
Télécharger un exemple de Diagramme de Gantt en Gestion de Production 1. Un Contexte Industriel…
La réussite d’un projet repose largement sur la capacité à en structurer chaque étape avec…
This website uses cookies.