2011-05-02 23 views
6

谁能告诉我用于只是读取Excel文件exclusively由其他用户打开 OLEDB连接字符串打开?读取一个Excel OLEDB连接字符串的文件完全由其他用户

我尝试下面的连接字符串,它并没有为我工作: -

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Mode=Read;Extended Properties=\"Excel 8.0;HDR=YES;ReadOnly=true;\""; 

此连接字符串抛出以下异常时,它被其他用户打开: -

The Microsoft Jet database engine cannot open the file ''. It is already opened exclusively by another user, or you need permission to view its data. 

注:

  1. Excel文件保持共享,以便多个用户可以 打开它。使用
  2. 提供: - Microsoft.Jet.OLEDB.4.0
  3. Excel文件类型: - 的MS Excel 97-2003工作表
  4. 复制文件允许
+1

如果您只想从文件中读取数据,则可以先创建Excel文件的副本,然后在使用它之后再将其删除。 – 2011-05-02 05:42:12

+0

由于多个用户正在编辑excel,因此如果我们复制文件就会产生问题。 – 2011-05-02 05:50:49

+0

你试过了吗? – 2011-05-02 05:54:04

回答

0

我建议你使用后台线程重试打开间隔一段时间的连接,并且当您连接到excel数据源时,将所有数据读入内存并立即关闭连接,以便其他进程可以访问该文件。

相关问题