2014-07-08 55 views
0

最近我將一些winform應用程序數據移到了SQLite上。該應用程序在所有Windows機器上運行良好,但在Mac上Parallels我無法打開數據庫文件錯誤。我可以創建沒有任何問題的數據庫文件。但只要我檢查表存在我得到上述錯誤。使用SQLite在Parallels上運行的Winform

此文件創建步驟工作正常

SQLiteConnection.CreateFile(dbFile); 

但新的連接步驟失敗。

SQLiteConnection dbConnection = new SQLiteConnection("Data Source=mydb.db3;Version=3;"); 

錯誤堆棧

System.Data.SQLite.SQLiteException:無法打開數據庫文件 在System.Data.SQLite.SQLite3.Open(字符串strFilename,SQLiteConnectionFlags connectionFlags,SQLiteOpenFlagsEnum openFlags,的Int32 maxPoolSize,布爾usePool) at System.Data.SQLite.SQLiteConnection.Open() at App.clsSQLiteDB.CheckTableExists(String table)

+0

您沒有發佈錯誤消息。 – Dai

+0

你得到的異常是否有一個'InnerException',如果是的話,你可以發佈異常類型和消息嗎?如果你沒有指定,你有沒有檢查過該類將使用的默認目錄? –

+0

我無權訪問Mac。我正在提供數據庫的完整路徑。與創建數據庫文件路徑字符串相同的路徑字符串。這是什麼與Mac所使用的Linux路徑格式造成這種情況? – vinmen

回答

1

我設法解決了這個問題。必須在連接字符串中設置ParseViaFramework參數爲true。

SQLiteConnection dbConnection = new SQLiteConnection("Data Source=mydb.db3;Version=3;", true); 
相關問題