0

我有一个包含 SQL Server 2012 数据库备份的文件。我将此文件与 C# WinForms 应用程序一起使用,该应用程序创建一个数据库,将备份恢复到其中,然后执行更多功能。

我不想只是将此备份文件添加到我的应用程序中,因为这是一个安全问题。我在想我应该将备份添加为嵌入式资源,然后将其保存到临时文件中,从中恢复并删除它。

有一个更好的方法吗?有没有办法通过我可以传递给 SQL 服务器以在 RESTORE DATABASE 命令中使用的文件路径直接访问嵌入式资源?

4

1 回答 1

1

SQL Server 不知道如何从可执行文件中的内容恢复数据库。鉴于您声明您认为它能够成为嵌入式资源,我将假设它不是“最后一次正确的”备份,而是更多的“默认”备份。

如果我的想法是正确的,那么您基本上是在说您有一个默认设置。如果是这种情况,您根本不需要备份,您的代码只需要能够创建一个数据库并用某些东西填充它以“成为”默认状态。通过将备份作为资源嵌入,您(在我看来)表明结构和数据是众所周知的,那么为什么要走这RESTORE DATABASE条路呢?

于 2013-04-21T15:12:45.183 回答