J'utilise une DB MSDE tournat sur une instance MSDE par defaut.
elle est identifié par (LOCAL) sur mon Entreprise Manager.
sur une application C#.NET je souhaite sauvegarder ma base de données.
J'ai donc instancié un objet SQLDMO, pour pouvoir utiliser les DetachDB, AttachDB.
Mais je rencontre pas mal de problèmes :
1 - la SQLDMO.NameList retrournée par ListAvailableSQLServers contient (local) (en minuscule).
2 -
le test :
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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 object[] SetOfServers = new object[NB_SRV_MAX]; object[] SetOfDatabases = new object[NB_DB_MAX]; SQLDMO.NameList sqlServers = sqlApp.ListAvailableSQLServers(); for(int i=0 ; i<sqlServers.Count ; i++) { object srv = sqlServers.Item(i+1); if(srv != null) { SetOfServers[i] = srv; } } for (int i = 0 ; i < SetOfServers.Length ; i++) { if (SetOfServers[i].ToString()=="(LOCAL)") { object[] SetOfDatabases = new object[NB_DB_MAX]; try { MyServer.Connect(MyServer, "sa", "xxxx"); } catch (System.Runtime.InteropServices.COMException e) { } int i = 0; foreach(SQLDMO.Database db in srv.Databases) { if(db.Name!=null) { SetOfDatabases[i]= db; } i++; } return SetOfDatabases; } }
n'aboutit jamais et pour cause (majuscule)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if (SetOfServers[i].ToString()=="(LOCAL)")
le connect n'aboutit jamais non plus :
je précise que je ne fonctionne pas en autentification Windows."[Microsoft][ODBC SQL Server Driver][SQL Server]Échec de la connexion de l'utilisateur 'sa'. Raison : Non associé à une connexion sécurisée SQL Server."
en effet si je rajoute :
avant la connection ça fonctionne, mais dans ce cas j'utilise l'autentification Windows.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 srv.LoginSecure = true;
Partager