Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Bazy_dannykh / Подраздел 2.2 Создание структуры таблиц / Создание структуры таблиц.doc
Скачиваний:
14
Добавлен:
09.06.2015
Размер:
215.04 Кб
Скачать

Лабораторная работа № 2 (продолжение лабораторной работы №1)

2.1 Создание структуры таблиц

Вызов ДО Table Designer:

1 СПОСОБ: FileNewTableNew file (как показано на рис.2.1).

Внимание! Этот способ не рекомендуется использовать в случае применения настроек ограничения целостности на уровне поля, т.к. при нем блокируются поля ввода информации в строках зон Display и Field validation диалогового окна Table Designer.

Щелкните переключатель на Table

Нажмите кнопку для создания таблицы

Рис.2.1 ДО New для создания новой таблицы

2 СПОСОБ: на панели инструментов контейнера Database Designer нажать кнопку New table (как показано на рис.2.2).

Нажмите кнопку для создания таблицы

Рис.2.2 ДО Database Designer для создания таблицы

3 СПОСОБ: в ДО Project Manager перейти с вкладки All на вкладку Data, для активной строки Databases нажать переключатель "+" для раскрытия списка вложенных строк, затем нажать переключатель "+" на возникшей активной строке data1, активизировать возникшую строку Table и для этой строки нажать управляющую кнопку New.

После использования любого из описанных способов появляется ДО Create, в котором необходимо заменить заданное по умолчанию имя таблицы table1 на имя Poshk и нажать кнопку "Сохранить". В результате появляется ДО конструктора таблиц Table Designer, представленное на рис.2.3 (на рис.2.3 показано ДО Table Designer с еще не переименованной таблицей).

В возникшем ДО Table Designer необходимо на указанной по умолчанию вкладке Fields выполнить следующие действия.

В колонке Name рабочей области нужно ввести имена полей таблицы, например, для таблицы Poshk ввести имена nomp, famp, gord и stat. В колонке Type раскрыть список строк для выбора типа данных поля (по умолчанию в поле списка строк появляется тип Character). Например, нужно выбрать следующие типа данных:

Character – для полей nomp, famp, gord (таблицы Poshk), nomd, naim, cvet (таблицы Detl), nomr, npro, gorp (таблицы Proek);

Numeric – для полей stat (Poshk), vesd, cena (таблицы Detl), kolw (таблицы Poski);

Data – для поля Data (таблицы Poski).

В колонке Width вводится число разрядов ширины поля, как показано на рис.2.3, согласно схеме таблицы в лабораторной работе №1 (например, для поля nomp вводится цифра 2, для поля famp - цифра 10 и т.д.). В колонке Decimal вводится количество десятичных знаков до и после запятой плюс точка, которая считается как десятичный знак. Например, если число состоит из двух целых и двух дробных знаков, то в колонке Width надо ввести цифру 5.

Зона Display строка Input mask для указания маски отображения поля

Зона Display строка Caption для указания заголовка поля

Зона Display строка Format для указания формата значения поля

Выберите вкладку Fields

Рабочая область, зона Name для ввода имени поля

Зона Type рабочей области для ввода типа поля

Зона Width рабочей области для ввода ширины поля

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

Рис.2.3 ДО Table Designer

В зоне Display ДО Table designer в строке Format нужно указать формат вывода значения поля. Например, для полей famp и gord (таблица Poshk) нужно указать “@!” (вывод только алфавитной информации прописными буквами). Аналогично для полей npro, gorp (таблица Proek), naim, cvet (таблица Detl) в этой строке надо указать “@!” для вывода прописных букв. Ниже приведена табл. 2.1 с шаблонами ввода/вывода.

Таблица 2.1 Шаблоны ввода/вывода

Символ шаблона ввода/ вывода

Назначение символов шаблона ввода/ вывода

Шаблоны вывода

@!

Только буквы с переводом в прописные

Шаблоны ввода

9

Допускает при вводе только цифры для символьных данных и цифры со знаком и точкой - для числовых. Каждый символ означает ввод только цифры для одного разряда

#

Цифры, пробелы и знаки (блокирует буквенную клавиатуру)

Х

Любые символы

!

Преобразует строчные буквы в прописные

В строке Input mask указывается маска отображения значений полей по формату ввода. Например, для поля nomp (Poshk) в этой строке нужно указать маску П# (символ # - означает ввод только цифр, знаков числа, точки с одновременной блокировкой алфавитной клавиатуры). Аналогично для полей nomd и nomr нужно указать маску соответственно Д# и Р#. Для полей famp, gord, npro, gorp, naim, cvet указать маску из 10 символов “!!!!!!!!!!” (без кавычек и соответственно числу разрядов этих полей) для отображения вводимых символов и записи их на диск прописными буквами. Для полей vesd и stat указать “99” (ввод 2-х разрядов цифровой информации). Для поля Data ввести функцию ctod (“01/09/01”) для отображения вводимых символов в формате даты.

В строке Caption указываются заголовки полей на русском языке согласно их названию в схеме данных (например, Номер поставщика).

В зоне Field validation в строке Rule (см. рис.2.4) указываются две функции:

вложенная функция substr для определения в конкретном поле (в данном случае поле Nomp) номера позиции, т.е. номера разряда, с которого начинается в этом поле подстрока преобразуемого символа поля (в данном случае 2-го одноразрядного символа), и число разрядов в подстроке (в данном случае один разряд);

функция val для преобразования типа данных у 2-го одноразрядного символа поля Nomp из типа Character в тип Numeric с целью контроля ввода числовых значений поля Nomp;

операция сравнения числового значения выделенного символа с установленным допустимым числом (значение 2-го разряда в коде поставщика должно быть меньше или равно 8).

Запись в строке Rule имеет вид:

val(substr(nomp,2,1))<=8

В строке Message вводится сообщение, которое появляется, если правило ввода нарушено. Например, для поля nomp: Значение номера поставщика не должно быть больше 8!. Аналогично для полей nomd и nomr.

В строке Default value вводится значение, которое устанавливается по умолчанию. Например, для поля Data: ctod (“10/09/01”).

Зона Field validation строка Rule для указания правила ввода значения поля

Зона Field validation строка Message для указания сообщения при нарушении правила ввода

Зона Field validation строка default value для указания значения по умолчанию

Рис.2.4 ДО Table Designer

Оформление строк в зонах Display и Field validation для полей остальных таблиц приведено в табл. 2.2, 2.3.

Таблица 2.2

Описание форматированного ввода/вывода для полей структуры

таблиц в диалоговом окне Table Designer

Зона Display

Field Validation

Поле

Форматированный вывод

Контроль ввода

Формат вывода (Format)

Маска ввода или шаблон (Input mask)

Наименование поля (Caption)

Выражение проверки истинности ввода:строка Rule

Текст сообщения об ошибке: строка Message

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

Файл POSHK

NOMP

 

П# цифры и знаки

Номер поставщика

Val(Substr(nomp,2,1))<=8

"Значение номера поставщика не должно быть > 8"

 

FAMP

@!

!!!!!!!!!! (10 раз)

Ф.И.О поставщика

 

 

 

GORD

@!

!!!!!!!!!! (10 раз)

Город поставщика

 

 

 

Продолжение табл. 2.2

Зона Display

Field Validation

Поле

Форматированный вывод

Контроль ввода

Формат вывода (Format)

Маска ввода или шаблон (Input mask)

Наименование поля (Caption)

Выражение проверки истинности ввода:строка Rule

Текст сообщения об ошибке: строка Message

STAT

 

99 цифры со знаком для Numeric

Статус поставщика

Between((stat),10,30)

"Вводимое значение должно быть в пределах 10-30"

10

Файл DETL

NOMD

 

Д#

Номер детали

Val(Substr(nomd,2,1))<=8

"Значение номера детали не должно быть > 8"

 

NAIM

@!

!!!!!!!!!! (10 раз)

Наименование детали

 

 

CWET

@!

!!!!!!!!!! (10 раз)

Цвет детали

 

 

 

VESD

 

99

Вес детали

VESD=>5

"Вводимое значение должно превышать 5"

5

CENA

 

99.99

Цена детали

 

 

 

Файл PROEK

NOMR

 

Р# (Р-рус)

Номер разработчика

Val(Substr(nomr,2,1))<=8

"Значение номера разработчика не должно быть > 8"

 

NPRO

@!

!!!!!!!!!! (10 раз)

Наименование пректа

 

 

 

GORP

@!

!!!!!!!!!! (10 раз)

Город проекта

 

 

 

Файл POSKI

Поля NOMP, NOMD, NOMR - оформляются аналогично полям в файлах POSHK, DETL, PROEK

 

KOLW

 

9999

Количество

KOLW<=9998

"Значение кол-ва не должно быть>9998"

100

DATA

 

ctod('01/01/01')

Дата поставки

 

 

ctod ('10/09/01')

Таблица 2.3

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

устанавливаемое в строке Default Value зоны Field validation

Файл

Поле

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

POSHK

STAT

10

DETL

VESD

5

POSKI

KOLW

100

DATA

ctod ('10/09/01')