从vb6中指定DBF中的INDEX

时间:2016-02-19 15:22:43

标签: vb6 foxpro dbf

我有一个带有“users.cdx”索引文件的“users.dbf”表,它是一个空闲表,所以没有dbc文件。两者都位于同一个文件夹中。有时当我在users.dbf中添加一个新行时,users.cdx没有更新,dbf和cdx之间的链接被破坏了。此表属于第三方应用。 为了解决这个问题,我从foxpro表查看器中使用de命令“USE .. \ myfolder \ users.dbf INDEX .. \ myfolder \ users.cdx”,并再次链接索引文件。 有没有办法从vb6使用此命令? 谢谢

1 个答案:

答案 0 :(得分:3)

从旧版演示中删除了一些代码:

CN.Open "Provider=VFPOLEDB.1;Data Source='" _
      & App.Path _
      & "';Mode=ReadWrite|Share Deny None;Deleted=True"
With CN
    .Execute "ExecScript('USE DemoTable EXCLUSIVE" & vbCr _
           & "INDEX ON CustNumber TAG CustIX" & vbCr _
           & "INDEX ON DELETED() TAG DELETED BINARY')", _
             , _
             adCmdText Or adExecuteNoRecords
    'Resume sharing:
    .Execute "ExecScript('USE DemoTable SHARED')", _
             , _
             adCmdText Or adExecuteNoRecords
End With

重点是你可以使用ExecScript来做这些事情。