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