Fox PRO

1.2 Связь между таблицами

Типы связей между таблицами

1) один к одному. При таком типе связи каждой записи одной таблицы соответствует не более одной записи другой таблицы и наоборот. Связанные таким образом таблицы можно легко объединить в одну. Связь часто используется для разбиения очень широких таблиц на более узкие, что позволяет уменьшить время просмотра и управлять доступом к определенным частям таблицы.

2) один ко многим. Связывает одну строку какой-либо таблицы с двумя или несколькими строками другой. Связь устанавливается между первичным ключом основной таблицы и соответственным внешним ключом связной или подчиненной таблицы. Такие связи наиболее распространены между таблицами реляционной БД.

3) многие к одному. Что и один ко многим

4) многие ко многим. Связь нельзя установить между таблицами непосредственно, она устанавливается через третью таблицу, связную с двумя основными таблицами отношением многие к одному. На рисунке 1.2.1 изображены связи между таблицами.

Рисунок 1.1. Межтабличные связи

2 Физическое проектирование

2.1 Создание проекта

Приступая к разработке нового приложения, прежде всего, создайте проект приложения. В дальнейшем вы будете добавлять в него созданные вами элементы приложения. Для создания нового проекта вы можете использовать мастер Application Wizard (Мастер приложения) или команду New (Новый) из меню File (Файл).

При выполнении команды New (Новый) на экране открывается соответствующее диалоговое окно с перечислением всех типов элементов приложения, которые возможны в Visual FoxPro, что и отображено на рис. 2.1. По умолчанию установлена опция Project (Проект).

Для создания нового проекта выполните следующие действия:

1. Нажмите кнопку New file (Новый файл).

gl3-1.jpg

Рис. 2.1. Диалоговое окно New

2. В поле ввода Enter project (Введите имя проекта) диалогового окна Create (Создать) задайте имя создаваемого проекта (proj1), убедившись, что в поле Тип файла установлен тип сохраняемого файла Project (Проект), а в поле Папка правильно выбрана папка, в которой вы хотите расположить свой проект.

3. Для сохранения созданного проекта нажмите кнопку Сохранить. VisualFoxPro создаст файлы проекта и запишет их в указанное место. После этого откроется окно проекта Project Manager (Менеджер проекта) изображенное на рис. 2.1.1.

gl3-3.jpg

Рис. 2.1.1. Окно проекта Project Manager

2.2 Создание базы данных

Для создания базы данных выполним ряд операций:

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

2. Выберите в верхней части окна конструктора проектов вкладку Data(Данные). Курсор по умолчанию устанавливается в начале вкладки назначении Databases (Базы данных).

3. Нажмите кнопку New (Новый) в окне проекта.

4. В открывшемся диалоговом окне New Database (Новая база данных) нажмите кнопку New Database (Новая база данных).

5. В поле ввода Enter database (Введите имя базы данных) появившегося на экране диалогового окна Create (Создать) задайте имя создаваемой базы данных (data1), убедившись, что в поле Тип файла установлен тип сохраняемого файла Database (База данных), а в раскрывающемся списке Папка правильно указана папка, в которой вы хотите расположить создаваемую базу данных.

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

Рис. 2.2. Пустое окно конструктора базы данных

2.3 Создание таблиц

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

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

Окно конструктора таблицы Table Designer (Конструктор таблицы)(рис. 2.3.) содержит три вкладки, предназначенные для определения следующих параметров:

  • Fields (Поля) — полей таблицы;
  • Indexes (Индексы) — индексов;
  • Table (Таблица) — условий достоверности вводимых данных, а также триггеров добавления, удаления и модификации.

gl4-11.jpg

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

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

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

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

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

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

В Visual FoxPro допустимыми являются типы полей, перечисленные в таблице 1

Таблица 1 Типы полей Visual FoxPro

Тип

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

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

Текстовый

Character, Character(binary)

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

Числовой

Integer, Numeric, Float, Double

Integer отображает целые числа от-2 147 483 647 до +2 147 483 646. Числовые поля типа Numeric и Float отображают данные с фиксированной точкой в диапазоне от-0.9999999999x1 (Г19 до +0.9999999999х10+2°. Тип данных Double используется для хранения данных с высокой точностью в диапазоне от±4.9406564854 1247x1 (Г324 до±1 .797693 13486232x1 (Г308

Денежный

Currency

В поле денежного типа могут содержаться числа от -922 337 203 685 477.5807 до922 337 203 685 477.5807

Дата

Date

В поле типа Date может содержаться любая дата от 01. 01. 0001 до 31. 12.9999

Дата и время

DateTime

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

Логический

Logical

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

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

Memo, Memo(binary)

Memo-поле содержит символьные данные большого объема

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

General

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


Страница: