Pbm de base de donnés

Signaler
Messages postés
74
Date d'inscription
mardi 6 octobre 2009
Statut
Membre
Dernière intervention
15 septembre 2010
-
cs_Papymuzo
Messages postés
169
Date d'inscription
jeudi 24 juillet 2003
Statut
Membre
Dernière intervention
17 août 2010
-
je ne maitrise pas bien la bse de données sql.Voici le problème affiché Aidez moi svp


L'exception System.Data.OleDb.OleDbException n'a pas été gérée
ErrorCode=-2147467259
Message="Le moteur de la base de données Microsoft Jet ne peut pas ouvrir le fichier 'C:\Projet de mise a jour\Basededonnées'. Il est déjà ouvert en mode exclusif par un autre utilisateur, ou vous devez avoir l'autorisation de visualiser ses données."

nitialisation de la chaîne de paramètres pour la connexion

strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source= C:\Projet de mise a jour\Basededonnées"

'Initialisation de la chaîne contenant l'instruction SQL

strSql = "SELECT Code,libellé FROM Fi_service"

'Instanciation d'un Objet Connexion

ObjetConnection = New OleDb.OleDbConnection

'Donner à la propriété ConnectionString les paramètres de connexion

ObjetConnection.ConnectionString = strConn

'Ouvrir la connexion

ObjetConnection.Open()
'Instancier un objet Commande

ObjetCommand = New OleDb.OleDbCommand(strSql)

'Instancier un objet Adapter

ObjetDataAdapter = New OleDb.OleDbDataAdapter(ObjetCommand)

'initialiser l'objet Command

ObjetCommand.Connection() = ObjetConnection

'initialiser l'objet OleCBComandBuilder (sinon pas d'update)

ObjetCB = New OleDb.OleDbCommandBuilder(ObjetDataAdapter)

'Avec l'aide de la propriété Fill du DataAdapter charger le DataSet

ObjetDataAdapter.Fill(ObjetDataSet, "Fi_service")

'Créer une datatable à partir du dataset

ObjetDataTable = ObjetDataSet.Tables("Fi_service")

'Mettre dans le DataGrid une table DataTable

DataGridService.DataSource = ObjetDataTable

2 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
65
BONJOUR
aussi

Et tu vas copier/coller ton programme à chaque fois sans expliquer le contexte ?

Si le programme te dit que la DB est déjà ouverte, c'est que ... elle est déjà ouverte.
Tu dois essayer de te connecter avec ton programme alors que Access est encore ouvert sur ta DB.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
169
Date d'inscription
jeudi 24 juillet 2003
Statut
Membre
Dernière intervention
17 août 2010
1
Salut,

C'est possible qu'une table de ta base soit ouverte en mode Création sous Access.
Si tu l'ouvres dans ce mode sa affiche ce message d'erreur, sinon ça passe normalement.
Au pire des cas ferme complètement Access.

Ensuite je te conseille de rajouter l'extension *.mdb au chemin de la base dans ta chaine de connexion.

Du coup tu aurais :

strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source= C:\Projet de mise a jour\Basededonnées.mdb"