- •Лабораторный практикум по дисциплине Базы данных и управление ими
- •Часть 2
- •Лабораторный практикум по дисциплине "Базы данных и управление ими"
- •Учебная база данных education3
- •Лабораторная работа № 1
- •Лабораторная работа № 2
- •Лабораторная работа № 3
- •Лабораторная работа №4
- •Лабораторная работа № 5
- •Лабораторная работа № 6
- •Лабораторная работа № 7
- •Лабораторная работа № 8
- •Лабораторная работа № 9
- •Лабораторная работа № 10
- •Лабораторная работа № 11
- •Лабораторная работа № 12
- •Лабораторная работа № 13
- •Лабораторная работа № 14
- •Приложение 1
Лабораторная работа № 13
ОБЕСПЕЧЕНИЕ ЦЕЛОСТНОСТИ. ОГРАНИЧЕНИЯ НА МНОЖЕСТВО ДОПУСТИМЫХ ЗНАЧЕНИЙ ДАННЫХ. (NOT NULL, DEFAULT, UNIQUE, CHECK, ALTER TABLE)
Порядок выполнения
-
В базе данных hospital создайте и заполните 5 записями таблицу diagnoz, второй и четвертый столбцы которой (см. ниже список полей по порядку) допускают неопределенные значения. Поля таблицы:
-
Код пациента,
-
Диагноз,
-
Температура тела,
-
Артериальное давление,
-
Пульс,
-
Частота дыхания,
-
Дата поступления.
-
Сосчитайте количество записей в таблице с использованием
-
COUNT(*),
-
COUNT(имя поля), используя поля Диагноз или Артериальное давление,
-
COUNT(имя поля), используя любое другое поле.
-
Для всех больных, поступивших в указанный Вами день, увеличить на 15% введенное выше значение пульса и на 0,5 градуса значение температуры (UPDATE).
-
Создайте таблицу worker и заполните ее 10 записями, предусмотрев ввод значений по умолчанию (DEFAULT) для последних четырех полей приведенного ниже списка (значения по усмотрению студента). Поля таблицы:
-
табельный номер, автоматическое увеличение,
-
фамилия, и.о., (3 поля) заполнение обязательно,
-
дата рождения, заполнение обязательно,
-
пол,
-
место работы,
-
должность,
-
дата приема на работу.
Обратите внимание!
Для ввода значений по умолчанию достаточно пропустить в команде INSERT имена полей, для которых указана опция DEFAULT.
-
Модифицируйте структуру таблицы worker (назвать worker1) и заполните 5 записями, предусматривая заполнение только уникальных комбинаций полей (фамилия и дата рождения) в таблицу. Проанализируйте, что будет при повторном вводе уникальной комбинации полей.
-
Модифицируйте структуру таблицы worker1, введя проверки вводимых значений в поля таблицы:
-
Принимаемые на работу должны быть не моложе 18 лет,
-
Принимаются только мужчины (или женщины – на Ваш вкус),
-
На определенные (Вами) должности принимаются только мужчины (или женщины).
-
На работу принимаются мужчины в возрасте от 18 до 60 лет и женщины – от 18 до 55 лет.
-
Женщины принимаются на работу в один список подразделений, мужчины – в другой. Списки могут частично перекрываться.
Обратите внимание!
Для того, чтобы добавить проверку условий (CHECK), надо в описание соответствующего поля добавить условие проверки (например,
CHECK (pol='м' OR pol='ж')) или
CHECK (pol IN('м','ж')).
Это – условие на одно поле.
Можно также добавлять проверку условий сразу для нескольких полей. Пример такой проверки приведен ниже:
CHECK ((dolgn='Формовщик' AND pol='м') OR (pol='м') OR (pol='ж'))
-
Файл вывода предъявите преподавателю и объясните полученные результаты.
Контрольные вопросы
-
Как обеспечить ввод данных по умолчанию? Покажите на примере.
-
Как обеспечивается автоматическое увеличение данных в поле? Когда это актуально?
-
Как скопировать структуру данных из одной таблицы в другую?
-
Что такое целостность?
-
Какие виды ограничений целостности Вы знаете?
-
Где размещаются ограничения CHECK?
-
Сколько ограничений может создаваться для таблицы? Для поля?
-
Приведите пример использования ограничений.
-
Относится ли к классу ограничений UNIQUE? PRIMARY KEY? FOREIGN KEY?
-
Является ли ограничением использование опций NULL и DEFAULT.
-
Как создать ограничение средствами графического интерфейса?
-