我将开始开发新的桌面应用程序。我想使用轻量级和独立的数据库,以便我将使用 SQL LocalDB,但我想添加身份验证。在访问数据库之前我需要用户名和密码,但那里没有应用身份验证,请帮助我该怎么做。
如果我们无法在 SQL LocalDB 中添加用户名和密码,那么请向我推荐任何其他最适合我的数据库,并且我可以使用实体框架。
提前致谢
我将开始开发新的桌面应用程序。我想使用轻量级和独立的数据库,以便我将使用 SQL LocalDB,但我想添加身份验证。在访问数据库之前我需要用户名和密码,但那里没有应用身份验证,请帮助我该怎么做。
如果我们无法在 SQL LocalDB 中添加用户名和密码,那么请向我推荐任何其他最适合我的数据库,并且我可以使用实体框架。
提前致谢
要将您的新数据库用户添加到您的数据库中,MSSQLLocalDB
您需要连接到它并执行以下操作:
CREATE LOGIN your_user WITH PASSWORD = 'your_password';
CREATE USER your_user FOR LOGIN your_user;
EXEC sp_addrolemember 'db_owner', 'your_user'
然后,您将能够使用这些凭据连接到MSSQLLocalDB
数据库引擎。SQL Server Authentication
Server name: (LocalDB)\MSSQLLocalDB
Authentication: SQL Server Authentication
User: your_user
Password: your_password
或者您可以使用实例管道名称而不是(LocalDB)\MSSQLLocalDB
作为 a Server name
(请参阅下面的获取它的位置)。
从 SQL Server Management Studio (SSMS) 到本地数据库的初始连接
最初要运行上面的 SQL 命令,您需要MSSQLLocalDB
使用Windows Authentication
. 您可以通过两种方式进行操作(如果默认情况下第一种方式不起作用,请尝试第二种方式)。
使用实例名称
Server name: (LocalDB)\MSSQLLocalDB
Authentication: Windows Authentication
使用实例管道名称
从命令行转到C:\Program Files\Microsoft SQL Server\130\Tools\Binn\
(您可能需要使用其他版本并替换\130\
为您的文件夹名称)并运行SqlLocalDB.exe
以查找您拥有的本地数据库实例:
SqlLocalDB.exe i
确保您已MSSQLLocalDB
列出。然后运行此命令以查看MSSQLLocalDB
状态(第一行)并在停止时启动(第二行):
SqlLocalDB.exe i MSSQLLocalDB
SqlLocalDB.exe start MSSQLLocalDB
然后您可以SqlLocalDB.exe i MSSQLLocalDB
再次执行以查看实例管道名称。像这样的东西np:\\.\pipe\LOCALDB#D7900618\tsql\query
要连接,SSMS
您需要输入:
Server name: np:\\.\pipe\LOCALDB#D7900618\tsql\query
Authentication: Windows Authentication
用这个 :
SqlConnection con = new SqlConnection("Server= localhost, Authentication=Windows Authentication, Database= employeedetails");
con.Open();
如果您想要 sql server 身份验证,请阅读以下内容:http: //msdn.microsoft.com/en-us/library/ms162132.aspx
只想添加您需要的系统管理员角色,以便您可以创建数据库
使用此代码
ALTER SERVER ROLE sysadmin ADD MEMBER your_user;
GO