MySQL中的数据不一致

时间:2012-12-03 10:33:57

标签: java mysql

我有一个做两件事的程序

1)从table1中选择一个字段获取所需列的值    用一个更新它和

2)将新增加的值更新回该表。

现在当两个用户同时调用该过程时,它们都会获得相同的值。

例如

如果DB中的值为100 然后两个用户调用该过程,理想情况下他们应该得到101和102。

但是有一段时间他们两人都得到101.

请帮我纠正此错误。 程序是:

DELIMITER $$

BEGIN
declare trc_id INT;

 SELECT  distinct column1 into trc_id FROM table1 where column2=match_name and     status='A';

set abc=trc_id+1;

update table1 set column1=str_id where column2=match_name  and column1=trc_id;

END $$

DELIMITER ;

1 个答案:

答案 0 :(得分:0)

在您的程序中使用Synchronized Method