我想在java的PosgreSql中实现以下场景:
用户选择数据
用户启动事务:插入、更新、删除数据
用户提交事务
我希望其他用户在交易过程中不能获得数据。如果当其他用户试图更新表时,我会得到一个异常,那就足够了。
我尝试过使用select for update或select for share,但它也会锁定数据以进行读取。我尝试过使用lock命令,但是我无法获得锁(ERROR: could not obtain lock on relation "fppo10"),或者在尝试提交事务时(而不是在更新数据时)另一个事务被锁定。
是否存在在事务开始时锁定数据的