jva*_*jva 3 oracle locking sql-order-by ora-02014
我想锁定表中的一条记录.记录被指定为"ID大于......的下一个"
CREATE TABLE test (id number);
SELECT id
FROM (SELECT id
FROM test
WHERE id > 10
ORDER BY id)
WHERE ROWNUM = 1
FOR UPDATE;
Run Code Online (Sandbox Code Playgroud)
这似乎直观而容易.但事实并非如此.有任何想法吗?
PS
我确实需要现有的查询保持不变,因为它是一个游标,有几个地方使用这个游标的%rowtype.
我想你需要这样的东西:
SELECT id
FROM test
WHERE id =
(SELECT MIN(id)
FROM test
WHERE id > 10)
FOR UPDATE;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5181 次 |
| 最近记录: |