如何以编程方式备份SQL Server数据库(mdf),以便以后行导入

本文关键字:mdf 导入 数据库 编程 方式 备份 Server SQL | 更新日期: 2023-09-27 18:14:42

我的目标是备份一个数据库(.mdf)作为一个文件与我的web应用程序项目写在c#。稍后应该在"恢复"页面上加载备份,在这个页面上,可以将备份表中的数据逐行附加到原始数据库中。实现这一点的良好实践是什么?我想只是复制mdf文件,但后来我读到关于数据库的附加和分离。此外,我不知道如何处理_log。ldf文件。

我期待你的提示。提前感谢您的帮助!

编辑:我只能使用免费的SQL Server Express,因为我想把我的程序分发给其他人。

如何以编程方式备份SQL Server数据库(mdf),以便以后行导入

可能,您参考了使用c#为Sql Server备份和恢复,以获得关于使用c#编写代码的完整想法,这在我使用它时帮助了我很多。

通过使用c#中的Backup类,您可以获得所有用于备份和恢复的工具。

如果您只对之后按行追加数据感兴趣,也许将每个表导出为CSV并在之后导入它更容易(因此您在c#中具有按行控制)。

如果你坚持一个文件,只需将所有的CSV文件添加到一个zip文件中。

您可以使用FileHelpers库(http://www.filehelpers.com/),您将很快使它运行起来。

显然在SQL Server管理对象库中有一个Backup类。

你可能想先检查一下,因为它看起来并不太复杂:

http://msdn.microsoft.com/en-us/library/microsoft.sqlserver.management.smo.backup.aspx

它需要你在运行它的服务器上安装两个或三个库,尽管它们相当小-不是Windows SDK大小…

请通过此链接了解如何使用c#和sql server备份和恢复数据。此外,您必须添加这些名称空间

Microsoft.SqlServer.Management.Smo;
Microsoft.SqlServer.Management.Common;