gpt4 book ai didi

c# - 如果删除了 .mdf,则在删除 LocalDb 数据库时找不到指定的文件

转载 作者:行者123 更新时间:2023-11-30 23:25:29 24 4
gpt4 key购买 nike

我正在尝试编写一个应用程序,如果在应用程序的文件夹中找不到它,它将创建一个本地数据库。我在删除 .mdf 后运行此查询

IF EXISTS (SELECT * FROM sys.databases WHERE name = N'Test_db')
BEGIN
DROP DATABASE Test_db
END

CREATE DATABASE Test_db
ON PRIMARY (NAME=Test_db, FILENAME='...\Test_db.mdf')

我的 command.ExecuteNonQuery() 抛出异常,即使它删除了数据库并创建了一个新数据库。错误来自命令的 DROP DATABASE 部分。

Additional information: Unable to open the physical file "...\Test_db.mdf". Operating system error 2: "2 (The system cannot find the file specified.)".

File activation failure. The physical file name "...\Test_db_log.ldf" may be incorrect.

我找到了 this问题,但没有解决问题的方法。

最佳答案

问题的解决方案是 sp_detach_db 因为它从服务器中删除数据库而不从文件系统中删除文件

EXEC sp_detach_db 'Test_db'

关于c# - 如果删除了 .mdf,则在删除 LocalDb 数据库时找不到指定的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37228400/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com