小编Fre*_*Doe的帖子

PostgreSQL 可以使用特定值锁定 INSERTS 吗?

是否可以在 PostgreSQL 的 INSERT 语句中为特定值创建锁?

可以说,我有这张桌子:

CREATE TABLE IF NOT EXISTS bookings (
bookingID   SERIAL PRIMARY KEY,
tableID     integer REFERENCES tables ON DELETE CASCADE,
startTime   timestamp NOT NULL,
endTime     timestamp NOT NULL,
);
Run Code Online (Sandbox Code Playgroud)

现在,如果启动了一个带有 INSERT 的事务块,我可以在事务时间内为具有相同 tableID 和相同日期的所有其他 INSERTS 创建锁吗?

因此,同一 tableID 的第二次预订必须等待第一个预订完成。之后可以再次检查,是否仍然可以插入。所以它基本上是 INSERTS 中特定值的 ROW 锁。

该程序是用 Java 编写的,但由于瓶颈,我不想使用同步块。

谢谢您的帮助

sql postgresql sql-insert

1
推荐指数
1
解决办法
2127
查看次数

标签 统计

postgresql ×1

sql ×1

sql-insert ×1