SQL异常存在同名数据库,或者无法打开指定的文件



这就是我遇到的问题:

发生异常
epos\SQLPlaygroundV1\SchoolDB.mdf失败。存在具有相同名称的数据库,或者指定的文件无法打开,或者它位于UNC共享上。

创建表的SQL脚本:

CREATE TABLE [dbo].[Student]
(
[Id] INT IDENTITY NOT NULL PRIMARY KEY, 
[FirstName] NCHAR(16) NULL, 
[LastName] NCHAR(16) NULL, 
[Age] NCHAR(3) NULL, 
[DateOfBirth] DATE NULL, 
[Enrolled] BIT NULL
)

用于写入数据库的C#:

using (SqlConnection connection = new SqlConnection("Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=C:\Users\Admin-PC\sourcerepos\SQLPlaygroundV1\SchoolDB.mdf;Integrated Security=True")) {
using (SqlCommand command = new SqlCommand()) {
command.Connection = connection;            
command.CommandType = CommandType.Text;
command.CommandText = "INSERT into Student (FirstName, LastName, Age, DateOfBirth, Enrolled)" +
" VALUES (@FirstName, @LastName, @Age, @DateOfBirth, @Enrolled)";
command.Parameters.AddWithValue("@FirstName", "Bob");
command.Parameters.AddWithValue("@LastName", "Bobson");
command.Parameters.AddWithValue("@Age", "21");
command.Parameters.AddWithValue("@DateOfBirth", "1990-01-01");
command.Parameters.AddWithValue("@Enrolled", false);
try {
connection.Open();
int recordsAffected = command.ExecuteNonQuery();
Console.WriteLine(recordsAffected);
} catch (Exception e) {
Console.WriteLine("Exception occurred");
Console.WriteLine(e.Message);
} finally {
connection.Close();
}
Console.ReadKey();
}
}

我已经验证了不存在具有相同名称的其他文件,连接字符串是从服务器资源管理器属性窗口复制和粘贴的。

我可以看到它的存在,它在正确的路径上等等,我不明白为什么它找不到它/无法访问它。

问题是连接查询,即数据库的路径,在repos之前只有一个反斜杠,您需要添加另一个。

相关内容

最新更新