2016-02-19 3 views
0

У меня есть таблица «users.dbf» с индексным файлом «users.cdx», это бесплатная таблица, поэтому нет файла dbc. Оба они расположены в одной папке. Иногда, когда я добавляю новую строку в users.dbf, user.cdx не обновляется, связь между dbf и cdx прерывается. Эта таблица относится к стороннему приложению. Чтобы решить эту проблему, я использую команду «USE .. \ myfolder \ users.dbf INDEX .. \ myfolder \ users.cdx» из окна просмотра таблицы foxpro, и индексный файл снова связан. Есть ли способ использовать эту команду из vb6? Спасибоasigning INDEX в DBF от vb6

ответ

2

Некоторый код вырезка из старых демо:

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 для таких вещей.

+0

Работает нормально. Большое спасибо. –