如何在 sqllocaldb 中添加用户名和密码
Posted
技术标签:
【中文标题】如何在 sqllocaldb 中添加用户名和密码【英文标题】:How to add username and password in sqllocaldb 【发布时间】:2015-01-21 01:13:09 【问题描述】:我将开始开发新的桌面应用程序。我想使用轻量级和独立的数据库,以便我将使用 SQL LocalDB,但我想添加身份验证。在访问数据库之前我需要用户名和密码,但那里没有应用身份验证,请帮助我该怎么做。
如果我们无法在 SQL LocalDB 中添加用户名和密码,那么请向我推荐任何其他最适合我的数据库,我也可以使用实体框架。
提前致谢
【问题讨论】:
【参考方案1】:要将您的新数据库用户添加到您的MSSQLLocalDB
,您需要连接到它并执行以下操作:
CREATE LOGIN your_user WITH PASSWORD = 'your_password';
CREATE USER your_user FOR LOGIN your_user;
EXEC sp_addrolemember 'db_owner', 'your_user'
然后您将能够使用这些凭据通过SQL Server Authentication
连接到MSSQLLocalDB
数据库引擎。
Server name: (LocalDB)\MSSQLLocalDB
Authentication: SQL Server Authentication
User: your_user
Password: your_password
或者您可以使用实例管道名称而不是(LocalDB)\MSSQLLocalDB
作为Server name
(请参阅下面的获取位置)。
从 SQL Server Management Studio (SSMS) 与本地数据库的初始连接
最初要运行上面的 SQL 命令,您需要使用Windows Authentication
连接到您的MSSQLLocalDB
。您可以通过两种方式进行操作(如果默认情况下第一种不起作用,请尝试第二种)。
使用实例名称
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
【讨论】:
【参考方案2】:使用这个:
SqlConnection con = new SqlConnection("Server= localhost, Authentication=Windows Authentication, Database= employeedetails");
con.Open();
如果您想要 sql server 身份验证,请阅读以下内容: http://msdn.microsoft.com/en-us/library/ms162132.aspx
【讨论】:
但是我想要sql server 身份验证【参考方案3】:只想添加您需要的系统管理员角色,以便您可以创建数据库
使用此代码
ALTER SERVER ROLE sysadmin ADD MEMBER your_user;
GO
【讨论】:
以上是关于如何在 sqllocaldb 中添加用户名和密码的主要内容,如果未能解决你的问题,请参考以下文章