sql - 是否可以在不释放行锁的情况下提交一个事务并启动一个新事务?

标签 sql postgresql

我有一个用例,我需要:

  1. 更新一行。
  2. 将更改保存到磁盘,这样系统崩溃就不会恢复它。
  3. 更新未被另一事务修改的同一行(竞争条件)。

我将如何实现这一目标?是否可以在不释放行锁的情况下提交一个事务并启动一个新事务?

最佳答案

Postgres 支持咨询锁,可以在 session 生命周期内持有。 如果您的所有线程都使用这些锁,您将是安全的。

关于sql - 是否可以在不释放行锁的情况下提交一个事务并启动一个新事务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62721885/

相关文章:

MySQL 问题 - 警告 : mysql_num_rows() expects parameter 1 to be resource, bool 值给出

python - 使用 Django 存款金额

sql - 如何编写 PostgreSQL 查询以获取同一表中子行的平均值?

database - 尽管进程正在运行,但 postgresql autovacuum 不工作

hibernate - HikariCP - 连接不可用

sql - 根据连接表中的多次出现从数据库中选择

mysql - 导出没有主键的表数据

java - 将百万条记录从 MEMORY 表移动到 MYISAM 表

sql - 我可以在 SQL Server 2012 中的多个列上创建索引吗?

sql - 如果使用 where 子句时数据为空,则将数据计为零