1

I have the problem that I runned an sql statement but haven't comitted it. Now the table is locked and I don't know how to unlock an Ingres database table.

I have searched for some information but I can't find anything.

Can anyone help me? Thanks in advance!

4

1 回答 1

1

显而易见的解决方案是提交您的声明,假设您对它所做的事情感到满意。或者如果你不是,则回滚。

从 Ingres 文档中:

在事务提交之前,由事务所做的数据库更改对其他用户是不可见的。在多用户环境中,多个事务同时打开,此行为可保持数据库一致性。如果两个事务正在写入同一个数据库表,DBMS 锁管理器让一个事务等待,直到另一个事务完成。写入数据库的事务会锁定受影响表中的页面,从而强制执行数据库一致性。

这当然假设您正在使用多个会话,因为您正在修改的表不应该被锁定到修改它的会话。只是到其他会话,直到您提交或回滚您的事务。

于 2019-07-05T09:15:49.193 回答