我有一个 120 GB 的 .mdf 文件。它应该包含一个仅用于原型的存储过程,因此当我们用新过程修补数据库时被删除。
我想恢复它,但我无法将数据库附加到我的本地数据库,因为我没有它的许可证。当我尝试将其附加到服务器时,它会抱怨已经存在具有该名称的数据库,并且我不想分离服务器,因为它当前正在使用。
有没有办法可以使用某些 cmd 命令或同等命令从文件中提取 SQL 脚本?
我有一个 120 GB 的 .mdf 文件。它应该包含一个仅用于原型的存储过程,因此当我们用新过程修补数据库时被删除。
我想恢复它,但我无法将数据库附加到我的本地数据库,因为我没有它的许可证。当我尝试将其附加到服务器时,它会抱怨已经存在具有该名称的数据库,并且我不想分离服务器,因为它当前正在使用。
有没有办法可以使用某些 cmd 命令或同等命令从文件中提取 SQL 脚本?
嗯,不
没有本地方法可以从备份 ( .bak ) 或悬空数据文件 ( .mdf ) 中提取单个存储过程。可能有第 3 方实用程序允许您执行此操作,但我没有任何使用它们的经验,因此在本论坛上向您推荐其中一个是不合适的。
您无法将 120GB 数据库附加到SQL Server Express Edition的实例,但您可以免费下载SQL Server Developer Edition并安装它以绕过该限制。如果您在此处使用 SQL Server 2022 版本,出于任何实际原因并不重要,因为您只需要它用于此单一目的。
安装后,您可以运行它。我假设您没有与之一起使用的日志( .ldf )文件:
如果您确实有日志文件,则需要在CREATE DATABASE命令中引用它,如下所示: