Connexion à une instance SQL Server en C#
Bonjour,
Afin d'automatiser, via un job, un export des bases ( l'équivalent de ce que fait tache -> générer un script) je crée un script C# qui le fait (n'ayant trouvé aucun script T-SQL pouvant le faire).
Pour cela en C# j'utilise la classe Server de la librairie Microsoft.SqlServer.Management.Smo
Voila un exemple d'utilisation en VB sur la msdn lien:
Code:
1 2 3 4 5 6 7 8
|
'Connect to a remote instance of SQL Server.'
Dim srv As Server
'The strServer string variable contains the name of a remote instance of SQL' Server.
srv = New Server(strServer)
'The actual connection is made when a property is retrieved.'
Console.WriteLine(srv.Information.Version)
'The connection is automatically disconnected when the Server variable goes out of scope.' |
Mon problème est que je n'arrive pas à trouver la bonne chaine de connection (ici strServer) pour me connecter en SSPI à mes instances comme j'arrive à le faire avec la classe SqlConnexion :
Code:
1 2 3
| SqlConnection MaSqlCnx = new SqlConnection();
MaSqlCnx.ConnectionString = "Integrated security = SSPI ; server = server\\instance";
MaSqlCnx.Open(); |
:calim2:
En effet ce qui suit ne fonctionne pas :
Code:
1 2
| Server srv = new Server("Integrated security = SSPI ; server = server\\instance");
MessageBox.Show(srv.InstanceName); |
Ni ceci :
Code:
1 2
| Server srv = new Server(@"server\instance");
MessageBox.Show(srv.InstanceName); |
Ni cela :
Code:
1 2 3
| Server srv = new Server();
srv.ConnectionContext.ConnectionString = "Integrated security = SSPI ; server = server\\instance";
MessageBox.Show(srv.InstanceName); |
Ces solutions me génére l'exception "Impossible de ce connecter au server" ... :(
ps: Je ne savais pas trop si je devais ouvrir cette discussion dans la rubrique C# car il s'agit d'un soucis vraiment particulier à SQL Server ...
Si vous avez une solution pour planifier un export de base de donnée autrement qu'en passant par un script dtsx je suis preneur ;)
Merci à tous ceux qui prendront la peine de réfléchir à mon problème :ccool: