使用
Informix時(shí)出現(xiàn)的異常:"
could not do a physical order read to fetch next row",具體表現(xiàn)在大數(shù)據(jù)量操作數(shù)據(jù)庫的時(shí)候,容易出現(xiàn)。在
JavaYou找到解決問題所在:
一方面可以在隔離級(jí)別的選擇上進(jìn)行改動(dòng)(但并不徹底),另一方面則是因?yàn)镮nformix默認(rèn)鎖等待時(shí)間為0,即在操作(update、delete等)數(shù)據(jù)庫的時(shí)候,如遇到其他操作也在使用同一張表的情況時(shí),則不等待和返回異常。
最簡(jiǎn)單的解決方法就是每次在獲取新的(注意是新的,原有的連接也無妨,但影響效率)數(shù)據(jù)庫連接時(shí),首先執(zhí)行設(shè)置連接的鎖等待時(shí)間的Sql:
SET LOCK MODE TO WAIT 10 (意思是設(shè)置鎖等待時(shí)間為10ms),
這樣基本解決問題,不再出現(xiàn)異常情況。
posted on 2005-12-02 10:46
ZhuJun 閱讀(5415)
評(píng)論(0) 編輯 收藏 所屬分類:
開發(fā)手記