Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Pract2011_BD_KT_7 до 13 работы.docx
Скачиваний:
26
Добавлен:
17.11.2018
Размер:
173.27 Кб
Скачать

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

СОЗДАНИЕ И УДАЛЕНИЕ ОБЪЕКТОВ БАЗЫ ДАННЫХ. (DROP, CREATE, DELETE, INSERT)

Порядок выполнения

Внимание!

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

  1. Изучите синтаксис команд удаления и создания (DROP и CREATE) баз данных (DATABASE), таблиц (TABLE), индексов (INDEX), умолчаний (DEFAULT), процедур (PROCEDURE), функций (FUNCTION), ролей (ROLE), схем (SCHEMA).

  2. Средствами Transact-SQL cоздайте базу данных для выполнения лабораторных работ 11-12. Имя этой базы данных состоит из номера группы и Вашей фамилии (например, КТ‑406_Иванов_лаб11-12).

  3. Используя графический интерфейс, познакомьтесь с параметрами созданной базы данных. Для этого в обозревателе объектов выделите имя созданной базы данных и вызовите контекстное меню. Внимательно изучите состав и назначение опций.

  4. С помощью команды DROP DATABASE удалите созданную базу данных.

  5. С помощью справочной системы познакомьтесь с синтаксисом инструкции CREATE TABLE. Снова создайте ту же базу данных.

  6. Изучите:

    1. наиболее широко используемые типы данных, используемые для полей таблиц в MSSQL (см. приложение 2),

    2. синтаксис команд удаления и вставки записей (DELETE, INSERT).

  7. Средствами Transact-SQL:

  • создайте в указанной базе данных таблицу avto с полями (CREATE TABLE):

      • Номер записи,

      • Марка автомобиля,

      • Год выпуска,

      • Дата покупки,

      • Фамилия покупателя,

  • введите 5 записей (INSERT). Дважды отсортируйте таблицу по полю, выбранному Вами, задавая это поле его именем или псевдонимом,

  • удалите первые три записи таблицы avto. (DELETE, опция TOP),

  • удалите одну из оставшихся записей (опция PERCENT),

  • удалите оставшуюся запись таблицы avto.

  1. Средствами Transact-SQL:

  • создайте таблицу tovar с полями:

      • Номер записи,

      • Наименование изделия,

      • Поставщик,

      • Марка изделия,

      • Дата выпуска,

      • Цена,

      • Дата покупки,

      • Фамилия покупателя,

  • должны быть обеспечены следующие возможности таблицы:

  • поле Номер записи – первичный ключ, заполняемый автоматически,

  • поле Дата покупки заполняется по умолчанию (соответствует дате проведения занятия),

  • все поля (за исключением поля Дата Выпуска) не допускают значения NULL,

  • введите в таблицу tovar 8 записей,

  • создайте запрос и выведите все записи из таблицы. Вывод выполнить с сортировкой по двум вариантам: по возрастанию и по убыванию, задавая столбец сортировки по имени и/или по номеру,

  • удалите все записи из любой таблицы по Вашему выбору, содержащие значения NULL.

  1. Выберите пункт главного меню SSMS Вид\Обозреватель шаблонов. Познакомьтесь с составом и структурой шаблонов, используемых для создания и удаления баз данных (database), таблиц (table), представлений (view), индексов (index), функций (function), триггеров (trigger) и т.д.

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

  2. Создайте таблицу pacient с полями:

  • код пациента,

  • фамилия пациента,

  • пол пациента,

  • дата рождения пациента,

  • домашний адрес пациента (не менее трех полей),

  • код лечащего врача,

  • диагноз,

  • номер палаты.

  1. Создайте таблицу doctor с полями:

  • код лечащего врача,

  • фамилия лечащего врача,

  • категория,

  • телефон лечащего врача.

  1. Создайте таблицу palata с полями:

  • номер палаты,

  • этаж,

  • отделение,

  • количество мест,

  • вид палаты (мужская, женская).

  1. Введите записи в таблицы средствами Transact-SQL (INSERT);

- во все поля записей всех трех созданных баз (10 записей в первую таблицу и по 5-6 записей во вторую и третью таблицы),

- в отдельные поля записей (3-5 записей).

  1. Проанализируйте содержание полей различного типа, допускающих (NULL) и не допускающих (NOT NULL) наличие неопределенных значений для случаев, когда в эти поля вводятся или не вводятся какие-то данные.

  2. Средствами T-SQL для базы данных hospital создайте в редакторе (используя окно «Конструктор запросов» !!!) и выполните следующие запросы, обеспечивающие вывод данных из полей связанных таблиц:

  • фамилии пациентов и их лечащих врачей,

  • фамилии врачей, поставивших диагноз, выбранный Вами,

  • фамилии лечащих врачей, поставивших этот диагноз пациентам мужского (или женского – по Вашему выбору) пола старше (или младше) выбранного Вами возраста. В список вывода, кроме фамилий врачей, включить фамилии пациентов, их пол, возраст,

  • фамилии всех пациентов выбранного Вами отделения,

  • фамилии пациентов с диагнозом «пневмония», а также фамилии врачей, поставивших этот диагноз, и номера палат, в которых лежат эти больные,

  • количество пациентов мужского и женского пола для каждого лечащего врача,

  • количество пациентов мужского и женского пола по видам болезней,

  • количество и средний возраст больных для каждого лечащего врача,

  • вывод данных о количестве больных по тем болезням, по которым это количество превышает установленный порог (например, три человека).

  1. Предъявите файл результатов преподавателю. Объясните результаты

Контрольные вопросы

    1. Какие параметры требуется определить при создании базы данных?

    2. Что представляют собой файлы с расширением MDF? NDF?

    3. Какие символы недопустимы при обозначении имен баз данных?

    4. Что понимается под термином «файловая группа»? Зачем нужны файловые группы?

    5. Какой начальный размер устанавливается для базы данных?

    6. Что такое «авторасширение»?

    7. Какова последовательность создания базы данных с помощью сценария (шаблона)?

    8. Приведите синтаксис инструкции создания базы данных. Объясните назначение опций.

    9. Приведите синтаксис инструкции создания таблицы базы данных. Объясните назначение опций и характеристики, назначаемые для полей.

    10. Опишите правила применения опции ORDER BY для различных способов задания поля сортировки. Продемонстрируйте на примерах.

    11. Как влияют на результат функции COUNT() значения NULL, если:

      1. поле, содержащее такие значения, включено в качестве аргумента функции (т.е. COUNT(имя поля));

      2. используется функция COUNT() без параметра.

Приведите подтверждающие примеры

    1. Продемонстрируйте создание дополнительного запроса с использованием Конструктора запросов.

    2. Покажите полный синтаксис команды SELECT со всеми известными Вам на текущий момент опциями.

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