[英]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.