PRB: Ошибка «не удается обновить указатель» при изменении таблицы Visual FoxPro

ВНИМАНИЕ! Данная статья переведена с использованием программного обеспечения Майкрософт для машинного перевода и, возможно, отредактирована посредством технологии Community Translation Framework (CTF). Корпорация Майкрософт предлагает вам статьи, обработанные средствами машинного перевода, отредактированные членами сообщества Майкрософт и переведенные профессиональными переводчиками, чтобы вы могли ознакомиться со всеми статьями нашей базы знаний на нескольких языках. Статьи, переведенные с использованием средств машинного перевода и отредактированные сообществом, могут содержать смысловое, синтаксические и (или) грамматические ошибки. Корпорация Майкрософт не несет ответственности за любые неточности, ошибки или ущерб, вызванные неправильным переводом контента или его использованием нашими клиентами. Подробнее об CTF можно узнать по адресу http://support.microsoft.com/gp/machine-translation-corrections/ru.

Эта статья на английском языке: 294469
Заявление об отказе относительно содержимого статьи о продуктах, поддержка которых прекращена
Эта статья содержит сведения о продуктах, поддержка которых корпорацией Майкрософт прекращена. Поэтому она предлагается как есть и обновляться не будет.
Проблема
Параметр Выполнения запроса можно использовать для работы с данными в таблицах базы данных. При выполнении запросов SQL (например, INSERT, UPDATE или DELETE) для таблицы Visual FoxPro, может появиться следующее сообщение об ошибке:
Ошибка выполнения '-2147467259 (80004005)':

[Microsoft] [Драйвер ODBC Visual FoxPro] Не удается обновить указатель.
Причина
Эта ошибка возникает, если выбран параметр Только для чтения флажок файла Visual FoxPro. Для просмотра атрибутов файла, щелкните правой кнопкой мыши файл Visual FoxPro, выберите команду Свойстваи перейдите на вкладку Общие .
Решение
Чтобы устранить эту проблему, убедитесь, что снять Только для чтения флажок файла Visual FoxPro.
Дополнительная информация
Для выполнения запросов на объект подключения , можно использовать метод Execute (с помощью объектов доступа к данным или объекты данных Microsoft ActiveX библиотек, например). В следующем примере кода используется библиотека объектов данных ActiveX (ADO) для воспроизведения указанной выше ошибки. В примере кода создается таблица Visual FoxPro тест с именем T1.Dbf и затем использует запрос SQL INSERT для добавления записей.

Действия для воспроизведения поведения

  1. Откройте новый проект Visual Basic-стандартный exe-файла. По умолчанию будет создана форма Form1.
  2. Установите ссылку на библиотеку объектов данных Microsoft ActiveX.
  3. Поместите на форму Form1 две кнопки (CreateTable и ADOExecute).
  4. Добавьте следующий код в форму Form1:
    Dim conADO As ADODB.ConnectionPrivate Sub CreateTable_Click()    conADO.Execute "CREATE TABLE T1 (col1 Int, col2 Int)", , adExecuteNoRecords    MsgBox "FoxPro file created."    End SubPrivate Sub Form_Load()    Dim strCon As String        CreateTable.Caption = "Create FoxPro File"    ADOExecute.Caption = "Execute Action Query"        strCon = "Driver={Microsoft Visual FoxPro Driver};" & _             "SourceType=DBF;" & _             "SourceDB=" & App.Path & "\;" & _             "Exclusive=No;"                     Set conADO = New ADODB.Connection    conADO.Open strConEnd SubPrivate Sub ADOExecute_Click()    Dim strSQL As String    Dim numRec As Integer        strSQL = "Insert Into T1 values(1,100)"    conADO.Execute strSQL, numRec, adExecuteNoRecords        MsgBox "Records Affected = " & numRec    End SubPrivate Sub Form_Unload(Cancel As Integer)    conADO.Close    Set conADO = NothingEnd Sub					
  5. Запустите проект и нажмите кнопку Создать файл FoxPro.
  6. Щелкните Выполнить запроси обратите внимание на то, что он выполняется успешно.
  7. Выберите Только для чтения флажок для файла T1.dbf.
  8. Нажмите кнопку Выполнить запрос еще раз, и вы получаете выше ошибки.
-2147467259 (80004005)

Внимание! Эта статья переведена автоматически

Свойства

Номер статьи: 294469 — последний просмотр: 09/05/2015 09:55:00 — редакция: 3.0

  • kbdsupport kbprb kbmt KB294469 KbMtru
Отзывы и предложения