【问题标题】:Connect LocalDB to ASP.net Project将 LocalDB 连接到 ASP.net 项目
【发布时间】:2017-01-06 15:37:17
【问题描述】:

我有一个带有 localDB 的 ASP.net 项目。 数据库文件名是ProjectDB.sdf,我把他放在了App_Data文件夹中。

我的连接字符串是:

<add name="ProjectConnection" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=|DataDirectory|\ProjectDB.sdf;Integrated Security=True" providerName="System.Data.SqlClient"/>

我尝试像这样在我的 cs 文件中使用数据库:

conn.ConnectionString = ConfigurationManager.ConnectionStrings["ProjectConnection"].ConnectionString;
using(SqlCommand cmd = new SqlCommand())
{
    cmd.CommandText = "select JobTitleId, JobTitleText from LuJobTitle where JobTitleText like @SearchText + '%'";
    cmd.Parameters.AddWithValue("@SearchText", prefix);
    cmd.Connection = conn;
    conn.Open();

应用程序属于 conn.Open();命令。

我收到的错误消息是:

An attempt to attach an auto-named database for file d:\user\documents\visual studio 2012\Projects\RealMatchSite\RealMatchSite\App_Data\ProjectDB.sdf failed.
A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.

我做错了什么?

提前谢谢你!

【问题讨论】:

标签: c# asp.net visual-studio-2012 connection-string localdb


【解决方案1】:

您的数据库服务器已经附加了该名称的数据库,因此您收到了该错误。如果不是这种情况,请尝试将其添加到您的连接字符串中:

User Instance=True

【讨论】:

  • 当我添加“User Instance=True”时,我得到了这个:“连接到 SQL Server 的用户实例时,不允许用户实例登录标志。连接将被关闭。”。我的数据库服务器是本地主机。如何从中删除所有数据库并保留我需要的唯一一个?
  • 你有sql mgmt studio吗?登录并删除它。
【解决方案2】:

尝试使用 Initial Catalog 调用您的数据库。 我希望这会有所帮助。

connectionString="Data Source=(LocalDB)\v11.0;Initial Catalog=ProjectDB;Integrated Security=True"

【讨论】:

  • 我试了一下,得到了这个错误信息:“无法打开登录请求的数据库“ProjectDB”。登录失败。用户“User-PC\User”登录失败。”
  • 你的服务器密码保护了吗??如果是这样,包括 ConnString = "Data Source=(LocalDB)\v11.0; Initial Catalog = ProjectDB; Persist Security Info = True; User ID = user; Password =password";
  • 它当前正在使用您的计算机凭据来访问您的数据库。好消息是它找到了数据库并尝试访问它。
猜你喜欢
  • 2021-12-13
  • 2018-06-26
  • 2019-07-11
  • 1970-01-01
  • 1970-01-01
  • 2016-08-10
  • 1970-01-01
  • 2021-01-17
  • 1970-01-01
相关资源
最近更新 更多