从只读文件系统打开SQL Server CE数据库数据

KF2*_*KF2 4 sql-server-ce c#-4.0

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

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

错误:

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

请帮忙!

Ric*_*son 6

要在只读介质上打开SQL Server CE数据库文件(SDF),还需要向连接字符串添加两个附加参数

  • 模式=只读
  • 温度路径= [路径]

你可以这样做:

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

如果您从App.Config获取连接字符串

请参阅/sf/answers/751206081/

string connectionString = ConfigurationManager.ConnectionStrings["myConnectionString"].ConnectionString;
connectionString += ";Mode = Read Only;Temp Path=" + System.IO.Path.GetTempPath()); 
Run Code Online (Sandbox Code Playgroud)