首先,您需要检查此 SQL Server 实例中是否启用了混合模式身份验证。为此,请运行 Management Studio 并连接到服务器。在对象资源管理器中右键单击服务器,然后单击属性。从显示的对话框中,转到安全并确保选择了“SQL Server 和 Windows 身份验证模式”:
您需要此模式才能使用用户名和密码进行身份验证。也可以使用 T-SQL 脚本启用它:
ALTER LOGIN sa ENABLE;
GO
ALTER LOGIN sa WITH PASSWORD = '<enterStrongPasswordHere>';
GO
此时(并最终重新启动您的实例)您应该能够在连接字符串中使用 sa 登录名和密码。但是,不建议这样做。为您的应用程序创建一个专用登录名(sa 除外)会好得多。您可以从安全\登录部分的对象资源管理器中执行此操作,或者使用脚本:
USE [master]
GO
CREATE LOGIN [my_login] WITH PASSWORD=N'<enterStrongPasswordHere>', DEFAULT_DATABASE=[YourDatabaseName], CHECK_EXPIRATION=OFF, CHECK_POLICY=ON
GO
然后你需要在你的数据库中为这个登录创建一个用户(登录是服务器级别的对象,用户在数据库中)。运行此脚本:
USE [YourDatabaseName]
GO
CREATE USER [my_login] FOR LOGIN [my_login]
GO
ALTER ROLE [db_owner] ADD MEMBER [my_login]
GO
这将使您的登录拥有对数据库的全部权限。您可能想授予它较少的权利,只授予需要的权限,但我不知道您实际需要什么。我建议您阅读this 文章以了解如何操作。
完成所有这些后,您可以使用这样的连接字符串:
Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=DataBaseName;User id=my_login;Password=<enterStrongPasswordHere>;