在我正在构建的webapp中,我需要从SQL Server数据库备份和恢复大约10-15个表。
我的解决方案..
-Backup:对于每个表,填充数据集,将其序列化为文件
-Restore:将文件反序列化为数据集并使用SQLBulkCopy
这是实现我的目标最好的吗?
答案 0 :(得分:4)
您可以使用SQLSMO备份/还原整个SQL Server数据库。约翰帕帕的article详细介绍了它。
您还可以以编程方式对DB运行BACKUP / RESTORE命令。
答案 1 :(得分:2)
你能不能简单地在(备份)数据库表之间来回移动/复制数据?为什么要处理文件?
IMO数据库几乎肯定是存储备份数据的最佳位置。它可以位于同一个数据库(Customer>> CustomersBak)中,也可以将数据复制到一个小型数据库。
恢复数据时可能遇到的两个问题:
1)正如sambo所提到的,身份栏。
2)外键约束与其他表可能不同步并阻止您刷新原始表
答案 2 :(得分:1)
您需要确保考虑以下事项。