[英]ADO.NET: Can't connect to mdf database file
我正在编写一个使用SQL Server 2005数据库的应用程序。 在连接字符串中我正在指定mdf文件,如下所示:
connstr = @"Data Source=.\SQLEXPRESS; AttachDbFilename=" + fileLocation + "; Integrated Security=True; User Instance=True";
当我执行代码时:
public static void forceConnection()
{
try
{
conn = new SqlConnection(connstr);
conn.Open();
}
catch (Exception e)
{
MessageBox.Show(e.Message, "Erro", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
finally
{
if(conn != null)
conn.Close();
}
}
我收到一个例外:
建立与SQL Server的连接时发生与网络相关或特定于实例的错误。 服务器未找到或无法访问。 验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供程序:SQL网络接口,错误:26 - 查找指定的服务器/实例时出错)
此代码适用于XP,但不适用于Vista。 我尝试在管理员模式下运行Visual Studio并将mdf文件移动到“用户数据”文件夹,但错误仍然存在。
有帮助吗?
你能在命令提示符下连接到sql server db吗? 我会确保你可以先连接。
尝试打开cmd提示符并键入sqlcmd -S .\\SQLEXPRESS -d your_dbase
如果我的dotnet-sourcecode出现mssql-connect问题,我尝试用不同的程序连接到数据库。 我使用的是也用dotnet编写的queryexpress 。 如果这个程序工作,那么我知道问题是我的程序代码,否则问题是连接字符串,代理,网络,sqlserver或用户权限。
你真的安装了sqlexpress吗? 它是使用machineName \\ sqlexpress还是作为默认实例运行?
你必须验证这些情况。
如果您没有使用默认实例,则可能需要使用实际的machineName \\ instance名称。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.