在多用户环境中,您通常如何处理数据编辑的回滚?您是否识别交易并构建任何后续相关交易的图表,然后将它们全部回滚?大多数 RDBMS 是否提供接口或机制来执行此类操作?
虽然我很天真,但我考虑过从备份中恢复,但后来我意识到这将恢复潜在数十个用户对不相关记录所做的更改。在编辑/备份的时间和当前时间之间。
在多用户环境中,您通常如何处理数据编辑的回滚?您是否识别交易并构建任何后续相关交易的图表,然后将它们全部回滚?大多数 RDBMS 是否提供接口或机制来执行此类操作?
虽然我很天真,但我考虑过从备份中恢复,但后来我意识到这将恢复潜在数十个用户对不相关记录所做的更改。在编辑/备份的时间和当前时间之间。
(基于 SQL Server)
通常,如果您的编辑放在BEGIN TRANSACTION ... COMMIT TRANSACTION中,这将锁定相关表/字段等,以便其他用户无法编辑相同的数据。
您还可以回滚事务以及可以回滚的嵌套事务。
很大程度上取决于用户如何访问数据库中的数据。