Импорт и присоединение таблиц из текстовых файлов

Access 2002 позволяет импортировать в базы данных табличные данные из обычных текстовых файлов. Эти файлы могут быть созданы либо одним из текстовых редакторов (например, приложением Блокнот в Windows), либо получены путём экспорта из другого приложения. Такая возможность особенно удобна в тех случаях, когда необходимо извлечь данные из программы, не поддерживающей экспорт в форматы DBF, WKS или XLS. Использование текстовых файлов даёт универсальный способ передачи информации между разными системами, независимо от используемого программного обеспечения.

Прежде чем импортировать данные из текстового файла, важно убедиться, что он структурирован соответствующим образом. Access 2002 поддерживает два основных формата текстовых файлов, содержащих табличные данные:

Файлы с фиксированной шириной полей представляют собой текст, в котором начало каждого поля определяется по его позиции относительно начала строки. Длина всех строк одинакова, а строки разделяются символами новой строки (обычно это комбинация CRLF – возврат каретки и перевод строки).

Замечание

Этот формат используется в системах, где важно точное выравнивание данных. Однако он менее гибок по сравнению с текстами, в которых используются разделители, так как изменение ширины одного из полей может привести к сдвигу всех остальных значений.

Файлы с разделителями полей чаще используются для обмена данными между приложениями. Различные программы поддерживают несколько стандартных способов разделения полей, наиболее распространённые из которых приведены в таблице 3.4.

ФорматОписание
Записи в одну строку, поля разделены запятымиРазделителем записей является символ новой строки. Некоторые приложения заключают все значения полей в двойные кавычки ("значение"), другие ограничиваются кавычками только для текстовых значений, чтобы отличить их от числовых.
Записи в одну строку, поля разделены знаками табуляцииРазделителем записей является символ новой строки. Предполагается, что все значения полей текстовые, а разделение производится символами табуляции (\t). Этот формат широко поддерживается текстовыми процессорами и табличными редакторами.
Записи в одну строку, поля разделены пробеламиAccess 2002 поддерживает использование пробела в качестве разделителя полей, однако это неудобно для файлов с текстовыми данными, так как в самих значениях полей могут присутствовать пробелы.

Таблица 3.4. Форматы текстовых файлов, поддерживаемые Access 2002

Совет

Если ваш текстовый файл использует необычные символы-разделители (например, вертикальный слэш | или двойную точку ::), Access позволяет задать собственный разделитель при импорте.

Перед импортом данных из текстового файла рекомендуется:

После подготовки файла можно использовать стандартный мастер импорта Access для загрузки данных. В процессе импорта Access предложит указать формат файла, задать разделители, выбрать кодировку и определить соответствие полей.

Пример текстового файла, содержащего данные в CSV-формате:

"ID","Имя","Возраст","Город"
1,"Иван Иванов",34,"Москва"
2,"Пётр Петров",28,"Санкт-Петербург"
3,"Анна Смирнова",41,"Екатеринбург"

Пример файла с фиксированной шириной полей:

001 Иван Иванов   34 Москва
002 Пётр Петров   28 Санкт-Петербург
003 Анна Смирнова 41 Екатеринбург

Замечание

Файлы с фиксированной шириной полей требуют дополнительной настройки при импорте, так как Access должен знать, где начинаются и заканчиваются поля.

Access 2002 позволяет как импортировать данные из текстовых файлов, создавая новую таблицу или добавляя данные в существующую, так и присоединять такие файлы, работая с ними как с внешними таблицами. В следующем разделе мы рассмотрим, как настроить процесс импорта и создать спецификации импорта для автоматической загрузки данных.