我想运行 SQL 数据库(MSSQL)的备份,然后删除该备份中包含的所有内容,本质上是清除备份数据,目的是在某个时间点将其存档。
数据库结构简单,只有 6 个表,只有隐含的 FK。最初的想法是,也许可以从所有表中抓取最大 PK 放入变量中,然后备份,然后删除 PK <= 备份前捕获的值。
如果在抓取和删除之间发生插入(中间备份),这当然无法达到我想要的效果
而且由于我无法在交易中执行备份……
我能想到的唯一可靠方法是备份它,暂时恢复为不同的名称,从备份数据中设置我的变量,然后返回原始数据库进行删除。当然,这似乎是一项漫长的路要走才能完成看似简单的任务。