2012-07-02 35 views
4

我從我的應用程序中使用SQL Server CE數據庫。我的程序位於DVD上。從只讀文件系統打開SQL Server CE數據庫數據

我無法從DVD上的數據庫中讀取數據,我設置SQL連接字符串模式爲只讀,但它不工作(我只是想讀從DB數據)

錯誤:

Opening a database as read-only requires a temp path to be specified. [ Db name = C:\Users\Ali\AppData\Local\Temp\Rar$EX52.280... ]

請幫忙!

+1

什麼是你所得到的錯誤? – leppie

+0

以只讀方式打開數據庫需要指定一個臨時路徑。 [Db name = C:\ Users \ Ali \ AppData \ Local \ Temp \ Rar $ EX52.280 \ ...] – KF2

回答

6

爲了在只讀媒體打開SQL Server CE數據庫文件(SDF),你還需要兩個額外的參數添加到連接字符串

  • 模式=只讀
  • 臨時路徑= [路徑]

你能做到這一點,如下所示:

connectionString = String.Format(@"Data Source = {0}\{1};Mode = Read Only;Temp Path={2}", 
      dataBaseDirectory, 
      dataBaseName, 
      System.IO.Path.GetTempPath());   

如果您收到從App.Config中的連接字符串

看到https://stackoverflow.com/a/10731515/19624

string connectionString = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString; 
connectionString += ";Mode = Read Only;Temp Path=" + System.IO.Path.GetTempPath()); 
+0

我從app.config.how獲取連接字符串嗎? – KF2

+1

已更新的答案顯示如何從App.Config更改字符串 –

相關問題