繁体   English   中英

如何使用C#创建新的SQL Server 2008 R2登录

[英]How to create new SQL Server 2008 R2 login using C#

我正在使用Visual Studio 2012和C#

我使用下面的代码使用C#为我的SQL Server数据库创建登录和用户

它适用于SQL Server 2012,但不适用于SQL Server 2008 R2。

这是我的代码:

var serverName = "."; // Your SQL Server Instance name
var databaseName = "Test"; // Your database name
var loginName = "testuserY"; // Your login name (should not exist - or you should add code to check if the login exists)
Server svr = new Server(serverName);
var db = svr.Databases[databaseName];
if (db != null)
{
 Login login = new Login(svr, loginName);
 login.DefaultDatabase = "master"; // Logins typically have master as default database
 login.LoginType = LoginType.SqlLogin;
 login.Create("foobar", LoginCreateOptions.None); // Enter a suitable password
 login.Enable();
 User user = new User(db, loginName);
 user.UserType = UserType.SqlLogin;
 user.Login = login.Name;
 user.Create();
 user.AddToRole("db_owner");
 Server svr = new Server(serverName);

此代码和其他代码之后不在SQL Server 2008 R2中运行。

请帮帮我。

我发现了问题。 要解决此问题,您应该在您的应用程序文件夹中复制此dll: Microsoft.SqlServer.ConnectionInfo.dll
Microsoft.SqlServer.Management.Sdk.Sfc.dll
Microsoft.SqlServer.Smo.dll
Microsoft.SqlServer.SqlClrProvider.dll
Microsoft.SqlServer.SqlEnum.dll

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM