Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Laboratornye_po_BD_1-6.doc
Скачиваний:
114
Добавлен:
07.03.2016
Размер:
33.23 Mб
Скачать

Лабораторная работа № 2

Тема: Создание базы данных

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

База данных в Visual FoxPro – это совокупность таблиц, отношений между таблицами, индексов, триггеров и хранимых процедур. Для создания базы данных в Visual FoxPro можно использовать мастера по созданию базы данных или создавать базу данных в интерактивном режиме с помощью конструктора базы данных. Конструктор базы данных позволяет создавать и модифицировать таблицы, хранимые процедуры, представления данных, определять для таблиц индексы, устанавливать отношения между таблицами, которые будут поддерживаться при создании форм и отчетов. Все описание структуры базы храниться в словаре базы данных, который представляет собой совокупность системных файлов.

Создание базы данных в окне проекта

База данных является частью проекта, поэтому ее целесообразно создавать в окне проекта.

Для создания базы данных необходимо выполнить следующие действия:

Открыть созданный проект.

Выбрать вкладку «Data» окна конструктора проектов.

Установить курсор мыши на значение Database и нажать кнопку New.

В открывшемся окне диалога «New database» нажать кнопку New database.

В поле ввода Enter database окна диалога «Create» нужно задать имя создаваемой базы данных, убедившись, что в поле Тип файла установлен тип сохраняемого файла «Database», а в поле Папка правильно выбран каталог, в котором следует расположить базу данных.

После нажатия кнопки Сохранить, и на экране откроется окно конструктора базы данных (рис 1). Используя панель инструментов Database Designer, команды меню Database и контекстное меню, в окне конструктора базы данных можно создавать новые таблицы, модифицировать существующие, создавать для них индексы, устанавливать отношения между таблицами.

Рис 1.Окно конструктора базы данных

Для создания новых таблиц и модификации существующих можно использовать:

  • Команды меню Database (табл.1)

  • Команды контекстного меню

  • Панель инструментов конструктора базы данных «Database Designer»

Таблица 1.

Команды меню Database

Команды

Назначение

New Table

Создает новую таблицу

Add Table

Добавляет созданную таблицу в базу данных

New Remote View

Создает удаленное представление данных

New Local View

Создает локальное представление данных

Modify

Открывает таблицу в конструкторе таблиц

Browse

Показывает содержимое таблицы в режиме Browse

Remove

Удаляет таблицу из базы данных

Find Object

Находит указанный вами объект в окне конструктора базы данных

Rebuild Table Indexes

Перестраивает индексы

Remove Delete Records

Физически удаляет помеченные для удаления записи

Edit Relationship

Редактирует отношения между таблицами

Edit Referential Integrity

Определяет условия целостности данных

Edit Stored Procedures

Открывает окно редактирования хранимых процедур

Connections

Выводит на экран окно диалога Connections (соединение), в котором вы можете создавать или изменять соединения с удаленными данными

Arrange

Упорядочивает объекты по имени или типу и выравнивает их по горизонтали или вертикали

Refresh

Обновляет информацию в окне конструктора базы данных

Properties

Выводит на экран окно диалога «Database Properties»

Clean Up Database

Очищает базу данных от помеченных для удаления объектов

При нажатии правой кнопки мыши на экране появляется контекстное меню конструктора базы данных, которое содержит наиболее часто используемые команды из меню Databаse, команду Help, а также команды для раскрытия уровней вложенности объектов в окне конструктора базы данных (Expand All) и их свертывания (Collapse All), предназначенные соответственно для раскрытия и свертывания уровней вложенности объектов в окне конструктора базы данных.

Рис 2. Панель инструментовDatabаse Designer

Панель инструментов «Databаse Designer» содержит кнопки для выполнения наиболее часто используемых действий над базой данных (рис. 2.). Если по внешнему виду кнопки вы не можете определить ее назначение, установите указатель мыши на кнопку. При этом под курсором появиться подсказка с ее наименованием, а в левой части строки состояния будет выведено краткое описание указанной кнопки (табл. 2).

Панель инструментов Databаse Designer Таблица 2.

Название

Назначение

New Table

Создает новую таблицу

Add Table

Добавляет таблицу в базу данных

Remove Table

Удаляет таблицу из базы данных

New Remote View

Создает удаленное представление данных

New Local View

Создает локальное представление данных

Modify Table

Модифицирует таблицу

Browse Table

Показывает таблицу в режиме Browse

Edit Stored Procedures

Редактирует хранимую процедуру

Connections

Создает связь с удаленными данными

Создание базы данных вне проекта

Visual FoxPro позволяет создавать базу данных вне проекта. Для этого можно воспользоваться одним из перечисленных ниже способов.

  • Выберите в меню File (Файл) команду New (Новый). В открывшемся диалоговом окне New (Новый) выберите опцию Database (База данных), а затем нажмите кнопку New file (Новый файл). На экране откроется диалоговое окно Create (Создать), в поле Enter database (Введите имя базы данных) которого задайте имя создаваемой базы данных и нажмите кнопку Сохранить. Созданный файл получит расширение dbc.

  • В диалоговом окне Task Pane Manager (Менеджер панели задач) воспользуйтесь ссылкой New Database (Новая база данных). На экране откроется диалоговое окно Create (Создать), в котором задайте имя создаваемой базы данных и нажмите кнопку Сохранить.

  • Введите в командном окне Command (Команда) команду create database, имеющую следующий синтаксис:

CREATE DATABASE [имяБазыДанных | ?]

В том случае, если вы не укажете имя создаваемой базы данных имяБазыДанных, на экране откроется диалоговое окно Create (Создать), позволяющее его ввести.

Базу данных, созданную вне проекта, можно использовать в разных проектах.

Таблицы — основа базы данных. Таблицы составляют основу вашей базы данных. В них будет храниться вся необходимая информация. В дальнейшем данные в таблице будут дополняться новыми данными, редактироваться или исключаться из таблицы. Вы сможете просматривать данные таблиц с помощью форм или упорядочивать их по заданному критерию. Информация, содержащаяся в таблицах, может быть использована для составления отчетов. Кроме того, используя диаграммы, вы можете графически представить информацию, содержащуюся в базе данных. Таблица состоит из строк и столбцов и имеет уникальное имя в базе данных. В каждой из таблиц содержится информация о каких-либо объектах одного типа.

В Visual FoxPro 9.0 можно создавать как таблицы, входящие в базу данных, так и отдельные таблицы, называемые свободными.

Имена таблиц. Таблицы, как и любые, другие объекты в Visual FoxPro, имеют имена. Таблицы бывают свободные и входящие в базу данных. Для таблиц, входящих в базу данных, вы можете задать два имени. Одно вводится в диалоговом окне Create (Создать), а второе — на вкладке Table (Таблица) окна конструктора таблицы. Имя, вводимое в диалоговом окне Create (Создать) при создании таблицы, является именем файла, в котором таблица сохраняется на диске. При задании этого имени необходимо придерживаться ограничений, накладываемых операционной системой на количество символов в имени файла. Второе имя таблицы является внутренним и хранится в базе данных. Внутреннее имя таблицы может содержать до 255 символов. Оно вводится в поле Name (Имя) вкладки Table (Таблица) окна конструктора таблицы. Наименование таблицы может содержать буквы, цифры и знак подчеркивания. Создавая новую таблицу, необходимо помнить, что в базе данных не может быть двух таблиц, имеющих одинаковые имена. Если в базе данных уже имеется таблица с таким именем, на экране появляется запрос, заменить ли существующую таблицу новой.

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

В наименовании таблицы недопустимо использование пробелов и специальных символов.

Создание таблиц с помощью мастера

Для создания таблицы с помощью мастера из конструктора базы данных можно воспользоваться одним из следующих способов:

  1. откройте диалоговое окно New Table (рис.3), выполнив любое из следующих действий:

  • Выбрать команду Database | New Table

  • Выбрать команду New Table контекстного меню

  • Нажать кнопку New Table на панели инструментов «Databаse Designer».

Независимо от того, каким способом создается таблица, откроется окно диалога «New Table» (рис. 3), которое предлагает воспользоваться мастером для создания таблицы или же создавать ее самостоятельно с помощью конструктора таблиц.

Рис.3 окно диалога «New Table»

  1. В диалоговом окне New Table (Новая таблица) нажмите кнопку Table Wizard (Мастер таблицы). На экране появляется первое диалоговое окно мастера.

  2. Visual FoxPro предлагает целый ряд таблиц, которые вы можете использовать в качестве прототипов, что позволит сэкономить время и обеспечить стандартные имена и типы данных для полей создаваемой таблицы. На первом шаге вам необходимо, используя предлагаемые Visual FoxPro прототипы таблиц и их поля, сформировать список полей создаваемой таблицы (рис. 4.). Для этого из списка Sample Tables (Примеры таблиц) выберите таблицу, которую хотите взять за основу при создании своей таблицы. При этом в списке Available Fields (Имеющиеся поля) отобразятся поля выбранной таблицы.

Рис. 4. Формирование списка полей

Содержимое списка Sample Tables (Примеры таблиц) можно изменять, используя расположенные под ним опции. Для создания таблиц делового содержания установите опцию Business (Деловые). В списке будут отображаться таблицы Accounts, Customers и т.д. При создании таблиц, содержащих данные личного характера, установите опцию Personal (Личные).

4. Перенесите из списка Available Fields (Имеющиеся поля) в список Selected Fields (Выбранные поля) поля, которые вы хотите разместить в создаваемой таблице. Для переноса полей используйте кнопки переноса:

Если в качестве прототипа при создании таблицы вы хотите использовать одну из созданных вами ранее таблиц, нажмите кнопку Add (Добавить), расположенную в левом нижнем углу, и в открывшемся диалоговом окне Open (Открыть) выберите требуемую таблицу. Наименование этой таблицы будет размещено в списке Sample Tables (Примеры таблиц) окна мастера.

Закончив формирование списка полей, нажмите кнопку Next (Далее).

  1. На следующем шаге работы мастера (рис. 5) необходимо указать, будет ли данная таблица свободной или она будет добавлена в базу данных. Для этого воспользуйтесь опциями, назначение которых описано в табл. 3.

Таблица 3.

Назначение опций диалогового окна Table Wizard — Step 1а

Опция

Назначение

Create my table as a stand-alone free table (Создать свободную таблицу )

При выборе этой опции создается свободная таблица

Add my table to the following database (Добавить таблицу в базу данных)

При выборе опции создаваемая таблица будет добавлена в базу данных

По умолчанию установлена опция Create my table as a stand-alone free table (Создать свободную таблицу). Для размещения создаваемой таблицы в базе данных установите опцию Add my table to the following database (Добавить таблицу в базу данных) и выберите из расположенного ниже списка ее наименование. Если в списке не окажется необходимой вам базы данных, нажмите кнопку, расположенную справа от списка. Затем в открывшемся на экране диалоговом окне Open (Открыть) выберите нужную базу данных. Ее имя будет размещено в раскрывающемся списке.

Если вы хотите задать внутреннее имя таблицы, отображаемое внутри базы данных, воспользуйтесь полем Table Name (Имя таблицы). Завершив установки параметров в текущем окне мастера, нажмите кнопку Next (Далее) для перехода к следующему шагу.

Рис. 5. Указание типа создаваемой таблицы

6. В следующем диалоговом окне мастера (рис. 6.) можно изменить наименования выбранных полей, их тип и размеры, используя для этого поля Field Name (Имя поля), Туре (Тип), Width (Ширина) и Decimals (Десятичные). Можно также, используя поле ввода Caption (Надпись), задать для каждого поля заголовок, который будет использоваться при просмотре таблицы и в качестве надписи к полю таблицы при создании форм с помощью мастера.

Флажок Allow null values (Разрешать нулевые значения) позволяет указать, может ли поле быть пустым, то есть не содержать значений.

Чтобы определить для поля ввода маску, в соответствии с которой в него будут вводиться данные, используйте переключатель Input Mask (Маска ввода), содержащий следующие опции:

Pre-defined (Предопределенная);

Custom mask (Пользовательская маска)

Для использования маски, предлагаемой Visual FoxPro, установите опцию Pre-defined (Предопределенная), а затем из раскрывающегося списка, расположенного справа от опции, выберите требуемое вам значение. В том случае, если ни одно из значений списка вам не подходит, установите опцию Custom mask (Пользовательская маска) и введите в расположенное справа поле выражение для маски. Для указания формата поля можно использовать значения раскрывающегося списка Format (Формат). Установите в диалоговом окне все необходимые значения поочередно для всех полей таблицы и нажмите кнопку Next (Далее) для перехода к следующему шагу.

  1. На третьем шаге в работе мастера (рис. 6) с помощью раскрывающегося списка Primary Key (Первичный ключ), содержащего список всех полей таблицы, задайте первичный ключ таблицы. При этом нужно помнить, что поле может использоваться для задания первичного ключа таблицы только в том случае, если оно содержит неповторяющиеся значения. Например, для таблицы customer, содержащей список клиентов, в качестве первичного ключа можно использовать поле customeriD с кодами клиентов. Используя список Field Name (Имя поля), укажите дополнительные индексы для таблицы, установив соответствующие флажки слева от наименования полей. Затем нажмите кнопку Next (Далее).

Рис. 6. Модификация полей

Рис. 7. Окно мастера для определения первичного ключа и индексов таблицы

  1. При создании таблицы, входящей в базу данных, на следующем шаге мастера определяются связи между новой таблицей и таблицами базы данных (рис. 8). В списке My new <имя_таблицы> table (Моя новая таблица) диалогового окна содержится перечень всех существующих и возможных связей для новой таблицы. Используя данный список и диалоговое окно Relationships (Отношения), открываемое при нажатии кнопки Relationships (Отношения), задайте тип связи между создаваемой таблицей и остальными таблицами базы данных. Если в базе данных не содержится таблиц, то сразу осуществляется переход к последнему шагу мастера.

  2. На последнем шаге работы мастера (рис. 9) указывается режим дальнейшей работы с таблицей. Для этого необходимо выбрать одну из трех опций, назначение которых описано в табл. 4.

Рис. 8. Задание связей между создаваемой таблицей и таблицами базы данных

Таблица 4.

Назначение опций диалогового окна Table Wizard — Step 4

Опция

Назначение

Save table for later use (Сохранить таблицу )

Сохраняет созданную таблицу

Save table and browse it (Сохранить таблицу и открыть для просмотра)

Сохраняет созданную таблицу и открывает ее в режиме Browse (Обзор) для просмотра содержимого

Save table and modify in the Table Designer (Сохранить таблицу и открыть в окне конструктора для модификации)

Сохраняет созданную таблицу и открывает ее в конструкторе таблиц для модификации

Выбрав одну из трех опций, нажмите кнопку Finish. На экране открывается диалоговое окно Save As для задания имени таблицы. Введите в поле Enter Table (Введите имя таблицы) имя таблицы, укажите папку, в которой ее сохраняете, и нажмите кнопку Сохранить.

Таблица создана и, в зависимости от установленной опции, откроется в режиме Browse (Обзор) или в конструкторе таблиц для дальнейшей модификации.

Рис. 9. Задание режима дальнейшей работы с таблицей

Создание таблицы с помощью конструктора таблиц

Конструктор таблиц предоставляет разработчику более широкие возможности при создании таблиц, чем мастер.

Можно перейти в конструктор таблиц из мастера по созданию таблицы или же непосредственно из окна диалога «New Table», нажав кнопку New Table и определив имя создаваемой таблицы в окне диалога «Create». В результате выполнения этих действий откроется окно диалога создания таблицы «Table Designer» (рис. 10).

Окно диалога «Table Designer» содержит три вкладки «Fields», «Indexes», «Table». На вкладке «Fields», которая является активной при открытии окна диалога, определяются поля таблицы. Вкладка «Indexes» служит для определения индексов таблицы. Вкладка «Table» – позволяет определять для таблицы условие достоверности вводимых данных и триггеры добавления, удаления и модификации данных.

Каждое поле таблицы характеризуется наименованием, типом и шириной поля. Для числовых полей дополнительно задается количество десятичных знаков. Кроме этих основных параметров, каждое поле

Рис. 10. Окно конструктора таблицы Table Designer

обладает дополнительными свойствами, определяющими условия ввода данных. Есть возможность задать для каждого поля его краткое описание, которое может потребоваться при модификации таблицы в процессе создания приложения или его сопровождения. Наименование каждого из полей таблицы выбирается произвольно, но таким образом, чтобы отразить характер информации, которая будет храниться в данном поле. Тип поля определяется типом данных, хранящихся в этом поле.

Наименования полей таблицы вводятся на вкладке Fields (Поля) в строке ввода столбца Name. При задании наименований полей вы можете использовать буквы, цифры и знак подчеркивания. Попытки ввести специальные символы Visual FoxPro проигнорирует.

Длина наименования поля ограничивается 255-ю символами. Обычно для имен полей используют краткие названия, которые более наглядны и легко читаемы.

Visual FoxPro не позволяет иметь в таблице поля с одинаковыми именами. При вводе имени, уже имеющегося в таблице, программа выдает предупреждение, указывающее, что поле с таким именем в таблице уже существует.

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

Для определения типа данных, размещаемых в поле, используются тип поля, его ширина и количество знаков после запятой. Для их ввода предназначены столбцы Туре (Тип), Width (Ширина) и Decimal (Десятичные) вкладки Fields (Поля) конструктора таблиц. В Visual FoxPro допустимыми являются типы полей, указанные в табл. 5.

Таблица 5.

Типы полей Visual FoxPro

Тип

Наименование

Отображаемые данные

Текстовый

Character, Character (binary)

Текстовые поля могут содержать буквы, цифры и специальные символы. Максимальная ширина поля составляет 254 символа. Тип Character (binary) используется в том случае, если не требуется учитывать кодовую страницу отображаемых данных

Числовой

 

Integer, Numeric, Float, Double, Integer (Autolnc)

 

Integer отображает целые числа от -2147483647 до +2147483647. Тип Integer (Autolnc) используется в том случае, когда необходимо, чтобы значение числа автоматически увеличивалось. Поле с таким типом доступно только для чтения.

Числовые поля типа Numeric и Float отображают данные с фиксированной точкой в диапазоне от -0.9999999999*10+19 до +0.9999999999*10+2°.

Тип данных Double используется для хранения данных с высокой точностью в диапазоне от ±4.94065648541247*10-324 до ±8.9884656743115*10+307

Денежный

Currency

В поле денежного типа могут содержаться числа от -922337203685477.5807 до 922337203685477.5807

Дата

Date

В поле типа Date может содержаться любая дата от 01.01.0001 до 31.12.9999 г.

Дата и время

DateTime

В поле типа DateTime может содержаться любая дата от 01.01.0001 до 31.12.9999 г. и время от 00:00:00 a.m. до 11:59:59 p.m.

Логический

Logical

Содержит логическое значение True (Т.) (Истина) или False (,F.) (Ложь)

Текстовое поле произвольной длины

Memo, Memo (binary)

Memo-поле содержит символьные данные большого объема. Тип Memo (binary) используется в том случае, если не требуется изменять кодовую страницу хранимых данных

Двоичное поле произвольной длины

General

Поле данного типа предназначено для хранения в таблицах изображений и других двоичных данных

Свойства полей

В правой части вкладки Fields (Поля) конструктора расположены поля, позволяющие задать для каждого поля таблицы свойства, которые будут использоваться при вводе в них данных.

Область Display (Отображение) содержит поля, позволяющие задать форматы ввода и отображения данных (табл. 6).

Назначение полей области Display вкладки Fields Таблица 6.

Поле

Назначение

Format (Формат)

Задает формат отображения данных в формах, отчетах и окне Browse

Input mask (Маска ввода)

Задает формат ввода данных

Caption (Надпись)

Определяет заголовок поля

Область Field validation (Проверка правильности ввода) позволяет задать параметры, описанные в табл.7.

Назначение полей области Field validation вкладки Fields Таблица 7.

Свойство

Назначение

Rule (Условие)

Условие правильности ввода данных

Message (Сообщение)

Сообщение, выводимое при неправильном вводе данных в поле

Default value (Значение по умолчанию)

Значение, вводимое в поле по умолчанию

Область Map field type to classes (Используемые типы полей для классов) предназначена для указания библиотеки и имени класса, который будет использоваться для создания объектов при размещении данного поля таблицы в форме (табл. 8.).

Таблица 8.

Назначение полей области Map field type to classes вкладки Fields

Свойство

Описание

Display library

Задает путь и имя файла библиотеки классов

Display class

Задает имя класса из выбранной библиотеки

Область Autolncrement (Автоматический инкремент) доступна только для полей таблицы с типом Integer (Autolnc) и позволяет задать параметры, описанные в табл. 9.

Таблица 9.

Назначение полей области Autolncrement вкладки Fields

Поле

Назначение

Next Value (Начальное значение)

Задает начальное значение поля, имеющего тип Integer (Autolnc)

Step (Шаг)

Задает число от 1 до 255, на которое будет увеличиваться значение поля

В текстовом поле Field comment (Комментарий) можно ввести краткое описание поля, которое может потребоваться при последующих модификациях структуры таблицы и сопровождении проекта.

Для каждого поля можно определить признак, разрешающий при вводе данных оставлять это поле пустым. Для этого используется опция NULL в описании поля таблицы.

Свойства таблицы

Каждая таблица обладает определенными для нее свойствами. Для задания свойств таблицы нужно выбрать вкладку «Table» (рис.11). Здесь можно ввести текстовое описание таблицы, определить условие проверки ввода данных на уровне записей и создать триггеры для добавления, изменения и удаления записей таблицы. Определение условий правильности ввода данных при описании таблицы гарантирует достоверность данных в таблице, так как проверка осуществляется независимо от того, из какого приложения произошло обращение к таблице.

Рис. 11. Вкладка Table конструктора таблицы

В ее верхней части расположено поле Name (Имя), в котором вы можете задать длинное имя таблицы. Это имя будет отображаться в окне проекта, а также использоваться при создании форм, запросов и отчетов.

При создании несвободной таблицы в строке Database (База данных) указывается имя базы данных, в которую будет входить создаваемая таблица. Это поле доступно только для чтения.

Используя поле Table Comment (Описание таблицы) вкладки Table (Таблица), вы можете ввести текстовое описание таблицы. Для определения условия проверки правильности ввода информации на уровне записей, гарантирующих достоверность вводимых в таблицу данных, и создания триггеров для добавления, изменения и удаления записей таблицы, предназначены поля областей Record validation (Достоверность записей) и Triggers (Триггеры).

В Visual FoxPro существует два режима просмотра таблицы: Edit (Ввод) и Browse (Обзор).

В режиме Edit (Ввод) поля таблицы располагаются в столбец друг под другом. Записи таблицы отделяются горизонтальными линиями.

В этом режиме пользователю нет необходимости после ввода информации во все поля одной записи заботиться о добавлении новой пустой записи. Visual FoxPro автоматически добавляет следующую запись, и пользователь продолжает вводить информацию.

В режиме Browse (Обзор) таблица более наглядна. Поля расположены в один ряд. Одна строка соответствует одной записи таблицы, а записи размещены одна под другой. При вводе данных в таблицу, представленную в режиме Browse (Обзор), после ввода одной записи пользователю необходимо самому добавлять новую пустую запись, используя для этого команду Append New Record (Добавить новую запись) из меню Table (Таблица) или комбинацию клавиш <Ctrl>+<Y>.

Для перехода в режимы просмотра таблицы Edit (Ввод) и Browse (Обзор) можно использовать одноименные команды из меню View (Вид).

Модификация структуры таблицы

Visual FoxPro предоставляет средства для исправления ошибок:

  • Изменение наименования поля и / или его типа

  • Вставка пропущенного поля

  • Удаление ошибочно введенного поля

  • Изменение порядка следования полей в таблице

  • Переопределение полей

Для модификации структуры таблицы, входящей в базу данных, необходимо установить в окне проекта курсор на модифицируемую таблицу и нажать правую кнопку мыши. Из появившегося на экране контекстного меню выбрать команду Modify. В качестве альтернативного способа можно открыть окно конструктора базы данных и воспользоваться кнопкой Modify Table панели инструментов «Database Designer». В результате на экране появится окно диалога «Table Designer», содержащее структуру выбранной таблицы.

Для открытия окна конструктора базы данных и модификации таблиц созданной ранее базы данных можно воспользоваться командой MODIFY DATABASE, которая имеет следующий синтаксис:

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]