在 C# 中访问数据库时出错

本文关键字:出错 数据库 访问 | 更新日期: 2023-09-27 18:35:54

>我正在使用以下连接字符串访问基于服务的数据库

static string appath = Library_Records.Program.app_path;
string connectionstring = @"Data Source=.'SQLEXPRESS;AttachDbFilename=appath;Integrated Security = true;User Instance = True";
connection = new SqlConnection(connectionstring);
 static string dbfiles = null;
 internal static string app_path
 {
     get { return dbfiles = "|Datadirectory|''5700.mdf"; }
 }

Library_Records:命名空间,程序是包含Main()的类名

当我调用connection.Open()时,它给出了以下错误

尝试为文件 appath 附加自动命名的数据库失败。一个 存在同名数据库,或者指定的文件不能 打开,或者它位于 UNC 共享上。

5700是我的数据库,扩展名为.mdf。如何纠正这个问题?

在 C# 中访问数据库时出错

变量

永远不会自动替换为字符串中的值,因此AttachDbFilename=appath;不起作用。

你应该做这样的事情:

string connectionstring = 
    string.Format(@"Data Source=.'SQLEXPRESS;AttachDbFilename={0};Integrated Security=True;User Instance=True", appath);
connection = new SqlConnection(connectionstring);