如下,具体情况,请问SQL该怎样操作才能不写日子?

问题是这样的,如果用delete from直接删除某个数据库表中的符合某个条件的数据的时候,SQL会将删除的每条记录的操作都写入日志文件,这样的话,就可以通过SQL以及恢复软件可以将删除的数据恢复到SQL数据库中;而用truncate table删除数据库表数据的时候,虽然不写入日志,不能恢复数据,却只能删除整个表的数据,而不能设定条件,这样就不能删除某部分数据了。
我的问题是这样的:
有不有办法,能像truncate table那样删除数据的时候不写日志,或者说就是删除数据后不能恢复,但是又能像delete from那样能自己设定where条件,删除符合某个条件的部分数据。
希望知道方法的朋友,给我一个好的方法,急需解决这个问题。
如果先备份好LOG,再用delete from删除,然后再还原LOG,但是我还原LOG时提示错误:
先前的还原操作未指定with norecovery或with standby。请在除最后步骤之外的所有其他步骤中指定with norecovery或with standby后,重新启动该还原序列。
restore log 操作异常终止。

猛跑小猪
浏览 171回答 2
2回答

PIPIONE

删除前备份好log在用delete from删除在还原LOG

莫回无

目前还没有强制delete不记录日志的方法,因为在设计的时候SQL Server为了保障数据的安全性,引擎在设计上就会对Delete操作进行日志记录。为了减少日志的记录,可以如下操作Select * into Table2 From Table1 Where 条件表达式Truncate table Table1sp_rename 'Table2', 'Table1'
打开App,查看更多内容
随时随地看视频慕课网APP