当前位置: 首页 > 面试题库 >

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

傅明知
2023-03-14
问题内容

我正在尝试编写一个将在应用程序的文件夹中找不到本地数据库的应用程序。我删除.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()抛出一个异常,即使它删除了数据库并创建了一个新的数据库。错误来自DROPDATABASE命令部分。

附加信息:无法打开物理文件“ … \ Test_db.mdf”。操作系统错误2:“ 2(系统找不到指定的文件。)”。

文件激活失败。物理文件名“ … \ Test_db_log.ldf”可能不正确。


问题答案:

解决该问题的方法是,sp_detach_db因为它从服务器中删除了数据库,而没有从文件系统中删除文件。

EXEC sp_detach_db 'Test_db'


 类似资料:
  • 问题内容: 我面临一个问题:删除文档后,我可以立即找到该文档。 但是,当我等待几秒钟时,删除的文档就消失了,并且无法使用同一命令找到该文档。 实际上,我知道发布新文档时会有类似的情况,您需要等待一段时间才能找到它。我认为这对我来说是可以接受的。但是关于这种情况,有什么想法吗? 这是可重现的要点:https : //gist.github.com/hxuanji/89813ffe0979f12dba

  • 命令用于从即时数据库目录中删除数据库。它将删除其所有对象,表,空格,容器和相关文件。 语法: 这里, 指定要删除的数据库的名称。 示例: 从实例中删除数据库名称:。 使用以下命令: 现在可以使用以下命令查看数据库:

  • 主要内容:CouchDB使用Fauxton删除数据库,CouchDB使用cURL工具删除数据库CouchDB使用Fauxton删除数据库 打开Fauxton网址:http://localhost:5984/_utils/ ,如下图所示 - 单击其中一个数据库:,将看到这个数据库所有信息,并点击删除(“Delete Database…”)选项来删除当前数据库(),如下图中所示 - 它将显示一个弹出消息,要求确认数据库名称。如下图中所示 - 点击“Delete”后,数据库就被删除了,列表中再没

  • 命令用于删除创建过(已存在)的数据库。删除数据库中的所有表并删除数据库。使用这个语句时要非常小心! 要使用,您需要数据库的权限。 是的同义词。 重要提示:删除数据库时,数据库的用户权限不会自动删除。 语法 示例 在前面的例子中,我们创建了一个数据库名称为。使用以下语句,删除这个数据库。 在执行上面语句后,数据库现在被删除。可以使用命令来验证它。 可以看到数据库在数据库列表中不再有显示。 使用Hei

  • PostgreSQL 删除数据库可以用以下三种方式: 1、使用 DROP DATABASE SQL 语句来删除。 2、使用 dropdb 命令来删除。 3、使用 pgAdmin 工具。 注意:删除数据库要谨慎操作,一旦删除,所有信息都会消失。 DROP DATABASE 删除数据库 DROP DATABASE 会删除数据库的系统目录项并且删除包含数据的文件目录。 DROP DATABASE 只能由

  • 前面我们介绍了如何在 MongoDB 中《 创建数据库》,本节我们来介绍一下如何删除 MongoDB 中的数据库。 MongoDB 中删除当前数据库的语法格式如下: db.dropDatabase() 注意:使用 db.dropDatabase() 命令会删除当前数据库,在删除数据库之前您可以使用 db 命令来查看当前数据库的名称。 下面通过示例来演示一下如何删除指定的数据库。 首先,使用 命令来