筆者寫這篇文章只是為了方便大家排錯
今天在使用sqlite 利用事務來操作事件時,
之后我們檢查數(shù)據(jù)庫操作并沒成功所以直接在sqlite 里運行SQL語句
過程:
之后我們的任何的操作,都變成了 database is locked 筆者一頭扎進這個錯誤,上網(wǎng)尋找各種說法,就是庫級鎖,不能同時操作大概這樣的說法.接著深層的研究一下是因為這個表被鎖了,原因是這個事務在開始以后沒有正確執(zhí)行,可能導致一直都是錯誤的沒法釋放,即使關閉NAV重啟都沒用,筆者重新創(chuàng)建數(shù)據(jù)庫文件和表同樣的操作依然出現(xiàn)這個錯誤
原因:請教了大神,檢查事務操作的語句
原來粗心的筆者 把commit 寫成了 commite ,導致了線程錯誤內存無法被正確的釋放所以數(shù)據(jù)庫直接被鎖
解決:正確的代碼再次執(zhí)行,就可以解決以上問題(雖然出于粗心造成問題,也總結出了sqlite的一些機制)