我寫了一個java程序,應該用算法生成的某些行填充sqlite數據庫。 所以我訪問數據庫,我插入我的行... 它去幾秒鐘,但:Java和SQLite問題
1.30168691E9s 100 - > '0 1 2 5 8',0,0,0
3.163 s 200 - >'0 1 2 7 17',0,0,0
3.158s 300 - >'0 1 2 9 30',0,0,0
線程「main」java.sql中的異常.SQLException:無法打開數據庫文件
在org.sqlite.DB.execute(DB.java:275)
在org.sqlite.DB.executeUpdate(DB.java:281)
在org.sqlite.Stmt .executeUpdate(S tmt.java:103)
在grid0.GridFill.fillTable(GridFill.java:26)
在grid0.GridFill.writeCombs(GridFill.java:54)
在grid0.Main.main(Main.java:15 )
Java結果:1
程序進入了前300行,但隨後崩潰......我不明白爲什麼。 我需要一些幫助......
謝謝...
公共無效fillTable(字符串手)拋出異常
{
字符串數據= 「」「 +手+」',0 ,0,0「;
if(count%100 == 0)
{
System.out.println((System.currentTimeMillis() - time)/(float)1000 +「s」+ count +「 - >」+ data );
time = System.currentTimeMillis(); (「+數據+」)「);」插入到手中(手,鎖,完成,替換數)「VALUES(」+ data +「)」); http://www.xerial.org/trac/Xerial/wiki/SQLiteJDBC Xerial似乎往往比zentus多更新其驅動器:
}
Hmmmm ...一些常見的罪魁禍首:這是螺紋的,如果是這樣,你是積極的,你沒有在同一時間訪問從多個線程數據庫? (請記住,GUI通常在與其他工作線程不同的線程中運行)是否每次都打開數據庫,如果是這樣,是否在嘗試再次打開數據庫之前關閉它?只是我遇到的一些事情。 – riwalk 2011-04-01 20:02:09
這是什麼操作系統?另一個程序是否可以同時觸摸文件?你可能在分區上的磁盤空間不足嗎? – 2011-04-01 20:02:17
它是一個單線程程序,我在Windows七64,我使用zentus jdbc驅動程序,我有65GB的高清... – StefanoS 2011-04-01 20:11:13