甲乙两人同时:SELECT 姓名,基本工资 FROM 工资表 WHERE 姓名=‘张三’得到结果:张三,2000.00甲:修改工资为 2500.00 后先(保存)更新,成功乙:修改工资为 3000.00 后 (保存)更新, 乙在修改工资前看到的是 2000.00 乙怎么知道期间甲已将 工资改为了 2500.00呢?
难道乙在更新前要将原来 2000.00 与表中当前值 2500.00比较后才能知道 2000.00 已经被别人修改过了吗? 强大的 SQL 是否能在乙更新时告诉乙数据已经被修改,让乙自己决定强行覆盖或放弃修改呢?希望得到朋友的解答,谢谢!
难道乙在更新前要将原来 2000.00 与表中当前值 2500.00比较后才能知道 2000.00 已经被别人修改过了吗? 强大的 SQL 是否能在乙更新时告诉乙数据已经被修改,让乙自己决定强行覆盖或放弃修改呢?希望得到朋友的解答,谢谢!
同样的条件 , 你读取过的数据 , 再次读取出来发现值不一样了
幻读的重点在于新增或者删除
同样的条件 , 第 1 次和第 2 次读出来的记录数不一样
http://blog.csdn.net/happyflystone/archive/2009/09/28/4604573.aspxhttp://blog.csdn.net/happyflystone/archive/2009/09/30/4620362.aspx