我需要用一些简单的 SQL 语句更新多个数据库。使用“链接服务器”在 SQL 中配置数据库,并且 SQL 版本是混合的(SQL 2008、SQL 2005 和 SQL 2000)。我打算在其中一个数据库中编写一个存储过程,但我想使用事务来确保每个数据库都得到一致的更新。
以下哪项最准确:
- 单个 BEGIN/COMMIT TRANSACTION 是否可以保证所有数据库中的所有语句都成功?
- 对于数据库上的每组命令,我是否需要多个 BEGIN TRANSACTIONS?
- 更新远程数据库时是否支持事务?我需要执行具有嵌入式事务支持的远程 SP。
请注意,我不关心任何类型的跨数据库引用完整性;如果可能,我只是尝试从单个存储过程同时更新多个数据库。
也欢迎任何其他建议。谢谢!