Bonjour
J'ai pas mal galéré pour utiliser les bases de données Access 2016 et VB6.
Si ça peut être utile :
Voila la syntaxe à respecter pour les différents paramètres
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Dim db As ADODB.Connection Dim cmd As ADODB.Command Dim record As ADODB.Recordset Dim StrConnect As String Set db = New ADODB.Connection ' ****************** La reference Microsoft Access 16.0 Access library ...doit être sélectionnée ********************* db.Provider = "Microsoft.ACE.OLEDB.16.0" StrConnect = "Data Source=D:\MyDatabase.accdb" ' le chemin de ma base .accdb db.ConnectionString = StrConnect db.Open ' ouverture WriteDataOnTxtFile "D:\Connection.txt", db.ConnectionString ' il suffit de lire la chaine db.ConnectionString dans mon cas enregistrée dans un fichier.txt
Autre exemple pour les bases ACCESS 97 avec une base protégée par un mot de passe .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 Provider=Microsoft.ACE.OLEDB.16.0; User ID=Admin; Data Source=D:\MyDatabase.accdb; Mode=Share Deny None; Jet OLEDB:System database=""; Jet OLEDB:Registry Path=""; Jet OLEDBatabase Password=""; Jet OLEDB:Engine Type=6; Jet OLEDBatabase Locking Mode=1; Jet OLEDB:Global Partial Bulk Ops=2; Jet OLEDB:Global Bulk Transactions=1; Jet OLEDB:New Database Password=""; Jet OLEDB:Create System Database=False; Jet OLEDB:Encrypt Database=False; Jet OLEDBon't Copy Locale on Compact=False; Jet OLEDB:Compact Without Replica Repair=False; Jet OLEDB:SFP=False; Jet OLEDB:Support Complex Data=False; Jet OLEDB:Bypass UserInfo Validation=False; Jet OLEDB:Limited DB Caching=False; Jet OLEDB:Bypass ChoiceField Validation=False;
Voila la syntaxe à respecter pour les différents paramètres
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Dim db As ADODB.Connection Dim cmd As ADODB.Command Dim record As ADODB.Recordset Dim StrConnect As String Set db = New ADODB.Connection db.Provider = "Microsoft.JET.OLEDB.4.0" StrConnect = "Data Source=D:\MyDatabase.MDB;Jet OLEDBatabase Password=MyPassWord" db.ConnectionString = StrConnect db.Open WriteDataOnTxtFile "D:\ConnectionPassword.txt", db.ConnectionString ' il suffit de lire la chaine db.ConnectionString dans mon cas enregistée dans un fichier.txt '
Pour enregisitrer la chaine Db.ConnectionString dans un fichier
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Provider=Microsoft.Jet.OLEDB.4.0; User ID=Admin; Data Source=D:\MyDatabase.MDB; Mode=Share Deny None; Jet OLEDB:System database=""; Jet OLEDB:Registry Path=""; Jet OLEDBatabase Password=MyPassWord; Jet OLEDB:Engine Type=4; Jet OLEDBatabase Locking Mode=0; Jet OLEDB:Global Partial Bulk Ops=2; Jet OLEDB:Global Bulk Transactions=1; Jet OLEDB:New Database Password=""; Jet OLEDB:Create System Database=False; Jet OLEDB:Encrypt Database=False; Jet OLEDBon't Copy Locale on Compact=False; Jet OLEDB:Compact Without Replica Repair=False; Jet OLEDB:SFP=False;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Public Sub WriteDataOnTxtFile(PathFile As String, ConnectStr As String) Dim PathFileTXT As String Dim strTXT As String PathFileTXT = PathFile If Dir(PathFileTXT) = "" Then ' No Open PathFileTXT For Output As #2 Else Open PathFileTXT For Append As #2 End If strTXT = ConnectStr Print #2, strTXT Close #2 End Sub
Cdt
Serge
Partager