| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MS Access > Deleting data in a linked table |
| Автор: MarinaK 11.4.2006, 02:40 | ||
Связала текстовый файл с базой (Access 2000). На попытки изменять или редактировать записи в этой "таблице" получаю сообщение
|
| Автор: Преображенский 12.4.2006, 09:59 |
| Скорее всего это связано с кодировкой, файл был кодирован на неподдерживающий вашей базой кодировке. Полазьте в референсах |
| Автор: Akina 12.4.2006, 11:25 |
| Преображенский, не говорите ерунды. MarinaK, Текстовые форматы (как и, например, DBF) не поддерживают прямого удаления записей. В DBF запись можно пометить как удаленную, а фактическое удаление все одно выполняется при сжатии файла. В текстовом формате даже такой возможности нет. Решение типа "костыль" - вместо удаления все или некоторые поля заполнять некоей информацией, которая свидетельствует о том что запись удалена и не должна обрабатываться. Например -1 в столбце индекса или "[deleted]" в поле "Наименование"... Физическое удаление таких записей из текстового файла возможно только копированием действительных записей в новый текстовый файл. Правильное решение - написание модулей импорта из текстового файла и экспорта в текстовый файл с учетом конкретных потребностей. Вся обработка проводится уже на Аксессовой таблице. Возможна организация принудительно или по таймеру обновления данных в таблице если текстовый файл изменен, а также организация слияния данных обновленного ТХТ-файла и обновленных данных в Аксессовой таблице - тоже доп. модулем. |
| Автор: MarinaK 13.4.2006, 00:50 | ||
Акина! Спасибо за подробные разъяснения.
Проблема в том, что и изменять в тектовом файле тоже ничего не получается (получаю сообщение об ошибке аналогичное случаю с удалением) |
| Автор: Akina 13.4.2006, 10:02 |
| Смотри атрибуты файла и настройки драйвера ODBC... в конце концов создай новый файловый источник данных. PS. Изменять можно только fixed-length источник, а текст с разделителями - всегда read-only. Причина та же что описана выше. |