[Déplacé VB6 --> .Net] connexion base VB

fattoumtoutou Messages postés 6 Date d'inscription samedi 1 août 2009 Statut Membre Dernière intervention 17 mars 2011 - 17 avril 2010 à 16:27
aserf Messages postés 114 Date d'inscription lundi 15 avril 2002 Statut Membre Dernière intervention 1 juillet 2011 - 19 avril 2010 à 15:18
salut
svp g un prob de connexion a la base ds vb2008
pouvez vous m'aidez svp
merci
voici le code qui me génére dé erreur (D:\2ém année ENSI\2 EM SEM\OIG\ACCEES\TP FATMA\société,produit,rang.accdb non trouvable )




Imports System.Data.OleDb
Public Class Form1


Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim MyConnection As New System.Data.OleDb.OleDbConnection()
Dim nomdb As String = "D:\2ém année ENSI\2 EM SEM\OIG\ACCEES\TP FATMA\société,produit,rang.accdb"
Try
MyConnection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & nomdb
MyConnection.Open()
Catch ex As Exception
MessageBox.Show("Impossible d'établir la connection à la base." & ex.Message)
End Try
End Sub
End Class

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
17 avril 2010 à 16:42
Salut
C'est vraiment le texte de ton erreur ?
bizarre

Essaye de rajouter des " pour encadrer le chemin/nom de ta base car elle comporte des espaces.
Dim nomdb As String = """D:\2ém année ENSI\... it,rang.accdb"""

Essaye aussi de sauvegarder puis de renommer ta base en supprimant les virgules dans le nom de la DB : peut-être qu'il n'aime pas.

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
aserf Messages postés 114 Date d'inscription lundi 15 avril 2002 Statut Membre Dernière intervention 1 juillet 2011
19 avril 2010 à 15:18
Salut,

Avec access 2007 la chaine de connexion est differente,
voici une fonction te permet de gerer ce probleme,
je l'utilise dans mon générateur de code www.database2code.com et sa marche.


Private Function GetConnectionStringAccess(ByVal pSource As String, ByVal pLogin As String, ByVal pPassword As String) As System.Configuration.ConnectionStringSettings

Dim lAccessVersion As Integer
Dim lIoinfo As New IO.FileInfo(pSource)

If lIoinfo.Extension.Trim.ToLower.Replace(".", "") = "accdb" Then

lAccessVersion = 2007

Else

lAccessVersion = 2003

End If

lIoinfo = Nothing

Dim lReturn As New System.Configuration.ConnectionStringSettings
Dim Name As String

Try
Dim SourceInfo As New IO.FileInfo(pSource)
Name = SourceInfo.Name.Replace(".", "")
Catch ex As Exception
Name = pSource
End Try

lReturn.ProviderName = ProviderNameOledb
lReturn.Name = "Access_" + Name + "_ConnectionString".Replace(" ", "_")

Dim lConnexionString As String = ""

If lAccessVersion >= 2007 Then

lConnexionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & pSource & ";"

If pPassword <> "" Then
lConnexionString += "Jet OLEDB:Database Password=" & pPassword & ";"
Else
lConnexionString += "Persist Security Info=False;"
End If

Else

lConnexionString = "Provider=Microsoft.Jet.OLEDB.4.0;"

If pLogin <> "" Then

lConnexionString += "User ID=" & pLogin & ";"

End If

If pPassword <> "" Then

lConnexionString += "Password='" & pPassword & "';"

End If

lConnexionString += "Data Source=" & pSource & ";"

End If

lReturn.ConnectionString = lConnexionString

Return lReturn

End Function



Développement Rapide PHP / VBNET -> www.database2code.com
0
Rejoignez-nous