亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標題: 【討論中】mysql可重復讀疑問 [打印本頁]

作者: Germin    時間: 2013-08-27 19:45
標題: 【討論中】mysql可重復讀疑問
本帖最后由 chinafenghao 于 2013-08-28 09:59 編輯

mysql的多版本允許兩個線程同時讀一個表T字段a

線程1根據(jù)發(fā)現(xiàn)字段a為5,自增后修改為6
線程2同時發(fā)現(xiàn)字段a為5,自增后修改為6
本來兩個順序執(zhí)行最后的結(jié)果為7

這是否不滿足串行化要求


作者: chinafenghao    時間: 2013-08-28 09:59
@Germin
你的sql是否為
update a set a.id = a.id + 1 where a.id = XXX;

or
select id from a where a.id = xxx;
update a set a.id = 值+ 1;

第一種可能會出現(xiàn)你說的情況,第二種如果加了事物,應該不會出現(xiàn)。
作者: Germin    時間: 2013-08-28 14:26
chinafenghao 發(fā)表于 2013-08-28 09:59
@Germin
你的sql是否為
update a set a.id = a.id + 1 where a.id = XXX;
第一種不會 第二中會,如果用hibernate的entity處理,一般都轉(zhuǎn)化成類似第二種的語句了





歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2