Pbm de base de donnés

edson44 Messages postés 74 Date d'inscription mardi 6 octobre 2009 Statut Membre Dernière intervention 15 septembre 2010 - 22 oct. 2009 à 12:36
cs_Papymuzo Messages postés 169 Date d'inscription jeudi 24 juillet 2003 Statut Membre Dernière intervention 17 août 2010 - 22 oct. 2009 à 13:00
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

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
22 oct. 2009 à 12:53
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)
0
cs_Papymuzo Messages postés 169 Date d'inscription jeudi 24 juillet 2003 Statut Membre Dernière intervention 17 août 2010 1
22 oct. 2009 à 13:00
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"
0
Rejoignez-nous