繁体   English   中英

数据库行的锁定范围(简单)

[英]Scope of locks on a database row (Simple)

如果我在一个方法中锁定了一行,然后从同一类中的另一个方法调用了该方法,它将保留该锁吗?

锁定行方法具有(作为准备好的语句):

SELECT * FROM table_name WHERE row_name IN (?) FOR UPDATE

该方法将选择那些对象并创建一个列表(或数组)。 然后,同一类中的方法将调用锁定的行方法以获取列表/数组并进行实际更新。

还要注意,我确实希望在同一线程中使用两种不同的方法(并发)。

那么,它是否保持更新方法的锁定?

数据库锁不与Java类或任何其他Java构造相关联。 它们与数据库事务关联。 事务内完成的任何工作都将使用锁来完成。 在不同事务中完成的任何工作都将被锁锁定。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM