我有一台新PC并将我正在处理的Windows应用程序项目复制到我的新机器上。我还复制了相关的MDF文件。我将MDF拖到我的解决方案中,我可以在服务器资源管理器,数据源和SQL Server对象资源管理器中看到它。
我的代码一旦尝试访问数据库,就会出现以下异常:
无法打开数据库\" MyApp.Classes.NorthwindContext \"登录请求。登录失败。\ r \ n登录失败的用户' NEW-PC \ Julien'。
连接字符串:
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=B:\MyApp\MyApp.Classes.NorthwindContext.mdf;Integrated Security=False"
我试图将我的用户名和密码放入连接字符串中,没有效果,如下所示:
connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=B:\MyApp\MyApp.Classes.NorthwindContext.mdf;Integrated Security=False;User ID=NEW-PC\Julien;pwd=mypwd"
有些谷歌搜索说我的登录需要在SQL Server对象资源管理器中Logins
文件夹的Security
文件夹中。
我需要做什么才能让我的代码读取这个数据库?
答案 0 :(得分:2)
首先,您应该尝试在连接字符串中启用集成安全性。这将使用您的Windows凭据登录到SQL数据库。
connectionString =" Data Source =(LocalDB)\ v11.0; AttachDbFilename = B:\ MyApp \ MyApp.Classes.NorthwindContext.mdf; Integrated Security = True;"
答案 1 :(得分:1)
我猜是因为您已将数据库从一台服务器移动到另一台服务器,即使数据库中有用户Julien
且服务器也有登录Julien
但用户Julien
已经成为孤儿。
您需要将此用户映射到此新计算机/服务器上的登录名。你可以做点什么
USE [DB_Name]
GO
ALTER USER JULIEN WITH LOGIN = JULIEN --<-- this should be a valid login
GO
这会将此孤立用户映射到此新服务器上的登录名。
答案 2 :(得分:0)
问题是我需要使用
Data Source=.\SQLEXPRESS
简单就是那个