QSqlDatabase :: transaction和其他打开事务,阻塞还是失败?

时间:2009-11-12 18:33:21

标签: sql sql-server oracle transactions qt4

在数据库连接上使用QSqlDatabase::transaction()时,我正在通过Qt处理Sql Server和Oracle。当另一个用户/连接在同一个数据库上打开一个事务时,transaction()调用阻塞,直到另一个事务完成或失败?

1 个答案:

答案 0 :(得分:1)

如果事务处理相同的数据(通常在记录级别),则事务应该只相互阻塞。

通常他们会等到锁定这些记录的事务完成后再继续。在某些情况下,如果他们必须等待锁定,可以将它们编程为错误/失败。