Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

После изменения типа поля ошибка "Индекс не найден"

518
07 июля 2008 года
Andreika
101 / / 14.02.2003
Есть dbf файл, который читается программой 1С. Кроме того, к файлу осуществляется доступ через ADO (ADODB.Command и ADODB.Recordset)
Понадобилось изменить тип поля со числового на строковый. В DBF Viewer'е поменял тип поля. После чего, при работе с файлом из 1С никаких ошибок нет, а при выполнении запроса через ADO
SELECT * FROM registry.dbf
Возникает ошибка "Индекс не найден". Базу переиндексировал, не помогает.
Фигн в том, что если убить таблицы и создать новые уже со строковым типом поля, ошибок не возникает. Если опять поменять тип поля, то ошибка опять появляется и не исчезает, даже если вернуть все на место. То есть, каким-то образом разрушается индекс, хотя и 1С и DBF-Viewer нормально работают после модификации структуры БД. Ошибка только при работе с файлом через ADO.
Поковырявшись, выяснил, что ODBC пытается найти индексный файл с расширением MDX, а у меня CDX. Однако, почему после удаления файла и создания его заново, ошибки не возникает? Может где-то кешируется какой индексный файл использовать, каким образом можно "сбросить" настройку ODBC на файл без очищения самого файла?
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог