2013-06-20 9 views
1

我在使用我的代碼訪問從Windows 98計算機上的sqlite創建的數據庫時遇到問題。輸出錯誤信息時,出現磁盤I/O錯誤。我正在使用sqlite版本3.6.23來創建數據庫。這裏是爲了訪問數據庫的sqlite3調用我的代碼的一部分:SQLite無法在Win98中打開數據庫

int sqlite3_extended_result_codes(sqlite3*, int on); 
int result = sqlite3_open_v2(sqliteDatabasePath, &database, SQLITE_OPEN_READONLY, NULL); 
if(result != SQLITE_OK) 
{ 
    cout << "Error opening database file: " << sqliteDatabasePath 
     << endl << "Sqlite3 Error Code: " << result 
     << endl; 
    cout << sqlite3_extended_errcode(database) << endl; 
    throw; 
} 
cout << "Successfully opened database " << sqliteDatabasePath << endl; 

我還沒有發現任何會告訴我,不然爲什麼這不會在Win98下工作,但也許我沒有」你看起來夠硬。任何提示或幫助將不勝感激!

回答

0

這似乎是一個已知的問題,並已在SQLITE論壇中討論。

原因是「讀取和寫入文件時重疊」的原因。按照SQLITE,他們不建議在舊版本的Windows上使用它。如果你真的需要使用它,請選擇舊版本。

通過這個環節來看,他們建議的替代,使SQLite的工作在Windows 98

http://sqlite.1065341.n5.nabble.com/Running-on-windows-98-td66471.html