4

我从我的应用程序中使用 SQL Server CE 数据库。我的程序位于 DVD 上。

我无法从 DVD 上的数据库中读取数据,我将 SQL 连接字符串模式设置为只读但它不起作用(我只想从 db 中读取数据)

错误:

以只读方式打开数据库需要指定临时路径。[数据库名称 = C:\Users\Ali\AppData\Local\Temp\Rar$EX52.280...]

请帮忙!

4

1 回答 1

7

为了在只读媒体上打开 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()); 
于 2012-07-02T07:55:53.437 回答