[英]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.