OleDbException无法打开文件dbf

时间:2019-01-08 00:21:41

标签: visual-foxpro

通过VFP中的命令窗口运行查询tabPage->Name后,我无法使用OleDb Provider从C#访问该表,直到关闭VFP

  

System.Data.OleDb.OleDbException:'无法打开文件\\ some-server \ some-share \ SomeTable.dbf。'

就像执行查询后VFP没有关闭文件句柄一样。

如何告诉VFP关闭文件/表而不必关闭VFP?

1 个答案:

答案 0 :(得分:0)

use

不带任何参数的情况会关闭当前工作区中的表\光标。

use in (select('SomeTable'))

仅在打开任何工作区时将其关闭。

这两个命令的作用域仅限于当前数据会话。如果使用默认会话以外的任何会话,则需要循环这些会话并在其中关闭。

一种更简单的方法是执行:

set exclusive off
在打开任何表之前在VFP中按

。然后将共享打开这些表,您可以从VFP或外部打开它们。

或者通过转到Tools -> Options -> Data并取消选中“ Open Exclusive”来将其设置为永久设置: options screenshot

顺便说一句,我回答过要考虑使用“使用”或“从该表中选择...”打开的任何表。

不过,您的问题含糊不清,也许您的意思是该表是作为查询的结果创建的(尽管您的查询没有该目的地)。如果是这种情况,那么创建的表将被独占使用,直到您关闭它为止(使用顶部的命令之一)。

相关问题