![]() ![]() колонтитул в word 2007, 0000001111 Использование баз данных других форматовСистемы управления реляционными базами данных различных производителей работают с файлами баз данных определенного формата. Многие из них используют специальные индексные файлы для ускорения поиска и сортировки данных в таблицах. Access 2002 позволяет работать не только непосредственно с таблицами баз данных других форматов, но и с индексными файлами этих таблиц. В этом разделе будут описаны форматы баз данных, которые можно импортировать (присоединять) в Access 2002, особенности работы с таблицами баз данных других форматов, а также использование индексных файлов, преобразование типов данных и типичные ошибки, возникающие при импорте таблиц. Форматы баз данныхВ большинстве настольных СУБД каждая таблица базы данных хранится в отдельном файле, который содержит и служебную информацию и данные в соответствующем формате. К служебной относится информация, описывающая структуру файла, например имена и типы данных полей таблицы, число записей в файле, длина файла и т. д. В отличие от других СУБД, Microsoft Access хранит все объекты (кроме страниц доступа к данным) в одном файле с расширением mdb. Кроме того, MDB-файл включает набор системных таблиц, которые содержат всю необходимую информацию об объектах базы данных, в том числе информацию о расположении и параметрах присоединенных таблиц других форматов. По умолчанию системные таблицы не выводятся в окне базы данных Access 2002. Чтобы получить доступ к этим таблицам, необходимо изменить один из параметров Access. Для этого нужно выбрать команду Сервис → Параметры (Tools → Options), раскрыть вкладку Вид (View) диалогового окна Параметры (Options) и в группе Отображать (Show) установить флажок Системные объекты (System Objects). Системные таблицы Access имеют доступ только на чтение, поэтому они не могут модифицироваться пользователем. Ниже описаны форматы файлов баз данных, которые могут быть присоединены или импортированы Access 2002. Таблицы предыдущей версии Access 2000 (MDB) Обрабатываются совершенно аналогично таблицам Access 2002. Они не требуют от пользователя специальных усилий по импорту и открываются так же, как таблицы Access 2002 (см. разд. "Открытие базы данных" гл. 1). Отличие будет состоять только в том, что после названия открытого файла в заголовке окна базы данных в скобках появится надпись: Формат Access 2000 (Access 2000 format file). Таблицы dBASE III, III+, IV, 5 и 7 (DBF) Файлы полей типа MEMO (DBT), индексные файлы dBASE III (NDX) и индексные файлы dBASE IV (MDX). Замечание Формат файлов таблиц и индексов dBASE III и dBASE IV является стандартным для систем управления базами данных, работающих на персональных компьютерах. Система управления базами данных Access 2002 позволяет присоединять индексные файлы форматов NDX и MDX. При изменении присоединенной проиндексированной таблицы dBASE Access автоматически обновляет индексные файлы. Замечание Если импортируемый файл dBASE содержит поля типа MEMO, то необходимо, чтобы файлы с данными этих полей (DBT) были доступны, т. е. они должны находиться в той же папке, что и сама таблица. Если Access 2002 не удается найти файл DBT, то присоединение или импорт данных из такой таблицы вызовет ошибку. При экспорте данных из таблицы Access 2002, содержащей поле типа MEMO, в таблицу формата dBASE автоматически создается файл DBT и ему присваивается то же имя, что и файлу таблицы. Табличные (DB) и индексные (РХ) файлы Paradox 3.x, 4.x и 5.0 Access 2002 позволяет присоединять табличные и индексные файлы Paradox 3.x и 4.x для MS-DOS, а также Paradox для Windows 5.0 и 8.0. При обновлении данных в таблице Paradox из Access индексный файл должен быть доступен наряду с файлом таблицы. В процессе присоединения таблицы Access 2002 автоматически присоединяет и индексный файл (если он существует). Все дополнительные файлы, используемые при импорте или присоединении таблиц баз данных, должны быть размещены в одной папке с таблицей. Стоит также заметить, что большинство приложений, работающих с файлами таблиц и индексов, используют для этих файлов стандартные расширения, приведенные выше, хотя это и не является обязательным. Поэтому определение конкретного формата файла таблицы базы данных иногда может оказаться нетривиальным. Присоединение и импорт внешних таблицПрежде чем перейти к вопросам, связанным с импортом и присоединением таблиц, нужно понять разницу между этими возможностями Access 2002. При импорте таблицы из другой базы данных в рассматриваемом файле MDB создается новая таблица Access, которая имеет ту же структуру (состав и типы полей), что и исходная таблица, и содержит все данные исходной таблицы. После этого вы уже работаете с новой таблицей в формате Access, которая не зависит от исходной таблицы. Когда вы присоединяете внешнюю таблицу, вы просто получаете доступ к таблице другого приложения, можете использовать данные из этой таблицы, но при этом она остается в старом приложении, в Access хранится только информация о связи. Оба приложения (то, в котором эта таблица была создана, и приложение Access) могут работать с этой таблицей одновременно. Однако для того, чтобы данные в присоединенной таблице можно было не только просматривать, но и изменять, эта таблица обязательно должна иметь ключевое поле. Обычно ключевое поле определяется в процессе присоединения таблицы. С присоединенной к базе данных Access 2002 внешней таблицей можно работать точно так же, как если бы она содержалась в этой базе. Единственным ограничением является то, что невозможно изменить структуру присоединенной таблицы (имена полей, типы данных и т. д.). Однако название таблицы можно изменить (при этом имя файла внешней таблицы не изменяется, изменяется только название (псевдоним) таблицы в базе данных Access), например, сделать его более понятным, т. к. ограничения на имя таблиц в Access менее жесткие, чем в других СУБД. Кроме того, в присоединенной таблице можно в режиме Конструктора изменять ряд свойств полей (формат, надпись, маску ввода, число десятичных знаков), которые влияют только на то, как эта таблица будет отображаться в Access. При этом в "родном" приложении свойства полей не меняются. Замечание Присоединение внешних таблиц к базе данных Access 2002 бывает выгодным в следующих случаях:
Использование импорта внешних таблиц в базе данных Access 2002 оправдано в следующих случаях:
При разработке приложения, которое должно работать с присоединенными таблицами, можно временно импортировать таблицу в базу данных, а затем на заключительной стадии разработки перейти к использованию присоединенной таблицы. При этом, чтобы исключить проблемы на этапе перехода от работы с импортированной таблицей на работу с присоединенной, не изменяйте имена и типы данных полей импортированной таблицы. В противном случае может потребоваться произвести множество изменений в запросах, формах, отчетах, макросах и модулях VBA. Если разрабатываемое приложение будет использовать таблицы Paradox, то не изменяйте и поля, образующие первичный ключ. Если же предполагается использовать таблицы dBASE, необходимо убедиться в том, что применяемые индексы соответствуют индексным файлам (NDX и MDX) таблицы dBASE. колонтитулы в word 2007, 000000111111 ![]() ![]() |