如何更新然后选择更新的行

时间:2014-07-24 13:44:32

标签: java sql queue

我有一个具有值ID和状态的表。我想更新状态为0的单个项目并将其状态设置为1,然后获取其ID以便可以对其进行处理。会有几个线程这样做,所以我需要只有一个线程更新状态并处理ID。

基本上,我试图避免使用消息队列。这可以只使用SQL吗?我基本上有一个Java应用程序,将插入和获取这些项目。我只想在不使用队列服务器的情况下实现一种排队机制。

1 个答案:

答案 0 :(得分:1)

如果您的ID是,例如1234,那么您需要让您的应用程序对数据库执行此操作:

update MyTable set State = 0 where ID = 1234

然后:

select State, other_field_1, other_field_2, other_field_N 
from MyTable where ID = 1234

SQL无法同时更新记录并选择更新的记录。