73033

Пользовательские типы данных на примере MS SQL Server

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

Информатика, кибернетика и программирование

Изучить возможности по определению и использованию пользовательских типов данных, DML и DDL триггеров, ограничений целостности в постреляционной СУБД. Освоить методы и технологии создания пользовательских типов данных на CLR.Net.

Русский

2014-12-03

51 KB

3 чел.

абораторная работа 3              Постреляционные базы данных, 2014 г.                ИУ5-93 2

Лабораторная работа «Пользовательские типы данных на примере MS SQL Server»
по дисциплине «Постреляционные базы данных»

Цель работы: 

  1.  Изучить возможности по определению и использованию пользовательских типов данных, DML и DDL триггеров, ограничений целостности в постреляционной СУБД.
  2.  Освоить методы и технологии  создания пользовательских типов данных  на CLR.Net.  
  3.  Получить навыки задания ограничений целостности и правил для постреляционной БД.

Литература:

  1.  Пирогов В. SQL Server 2005. Программирование клиент-серверных приложений. - Спб.: БХВ-Петербург. - 2006 г.

Литература дополнительная:

  1.  Уолтерс У. и др. SQL Server 2008: ускоренный курс для профессионалов: пер. с англ. – М.: ООО «И.Д. Вильямс», 2009. – 768с.
  2.  Основы программирования на C#. - Электронный ресурс [http://www.intuit.ru]

Время выполнения:

Время выполнения лабораторной работы 2 часа.

Пункты задания для выполнения: 

Задание 1. Создание и заполнение таблиц

В среде SQL Server Management Studio  создать БД lab3_93. 

В БД создать таблицу "Student"(студент), содержит свойства:

  •  fio - ФИО - строковое, varchar(15), (КЛЮЧ),
  •  vuz – вуз – строковое, varchar(10), (ОБЯЗАТЕЛЬНОЕ),
  •  year – год поступления – целое, (ПО УМОЛЧАНИЮ 2014).

Создать таблицу "Ozenka" (оценка), содержит свойства:

  •  subject - дисциплина – строковое, varchar(10),
  •  ball - оценка – целое, (от 2 до 5, ОБЯЗАТЕЛЬНОЕ)
  •  stud — студентvarchar(15),(ВНЕШНИЙ КЛЮЧ – каскадом, обновление – каскадом),
  •  id  - идентификатор (КЛЮЧ - PK) – целое, автоинкремент.
  •  Сочетание  subject и ball является УНИКАЛЬНЫМ.

Открыть таблицы на редактирование и заполнить тестовыми данными.

Проверить ограничения целостности.

Задание 2. Пользовательский тип данных - UDT

2.1. Создание UDT

В среде MS Visual Studio на языке С# создать пользовательский тип данных Square с полями:

Len - длина, скрытое,

sqr() - метод экземпляра — возвращает площадь квадрата,

inf() - метод класса — строка, содержащая пояснение к строке для инициализации объекта.

Переопределить метод Parse — разбор строки инициализации. Содержит «Число» или «Число S». Если указано просто число, то присвоить его длине. Если указано число c буквой S, то считать его площадью, а длину вычислить.

И  toString() - обратная к Parse, возвращает значение длины, площадь и объем.

Вычисляемое поле P – периметр (доступны методы Get и Set, изменяет длину).

Создать сборку,  подсоединить ее к БД на  SQL Server, создать тип данных в БД.

2.2. Работа с переменной пользовательского типа

В среде SQL Server Management Studio в окне запроса создать переменную типа Square и проверить методы работы с ней:

 declare @c тип

set @c='значение'

select @c.ToString(), @c.поле, @c.метод_экз()

set @c.поле=значение

select @c.ToString(), @c.поле

set @c=NULL

select @c.ToString()

select @c::метод_класса()

2.3. Добавление переменной пользовательского типа в таблицу

Добавить поле Sqr нового типа к новой таблице Фигуры (название, квадрат). Продемонстрировать в окне запросов выполнение запросов select и update к таблице с обращением к новому полю.

Открыть таблицу на редактирование и заполнить значения нового поля.

В окне запросов составить и выполнить запросы к таблице, например

- отобразить фигуры с площадью более 100,

- увеличить периметр в 2 раза для всех фигур.

Задание 3. Триггеры DDL - DML 

3.1.  Создание представления

В среде SQL Server Management Studio создать представление Bests, которое выводит:

- ФИО и предметы для отличных оценок.

Просмотреть результат представления и попробовать внести изменения.

3.2.  Создание DML триггера

Создать триггер на представление, который реализует добавление новой оценки (и при необходимости его студента).

Проверить работу триггера.

3.3.  Создание DDL триггера

Создать DDL триггер на создание представлений, который отображает сведения о событии.

Проверить работу триггера.

Вопросы для самопроверки: 

  1.  Как создать таблицы, их связи и ограничения используя мастера и DDL-запросы?
  2.  Что такое ограничения целостности, каких типов они бывают и как их задавать?
  3.  Что такое DML триггер, как и когда он запускается и как его создать? Как из триггера определить изменяемые данные?
  4.  Конструкции языка Transact SQL: условие, перехват исключений, создание исключений, присваивание переменных.
  5.  Что такое DDL триггер, как и когда он запускается и как его создать? Как из триггера определить возникшее событие и его параметры?
  6.  Что такое пользовательский тип данных? Как определить его поля (открытые и закрытые) и методы (экземпляра и класса)?  
  7.  Как создать и инициализировать переменную пользовательского типа? Как обратиться к ее полям и методам из запроса?


 

А также другие работы, которые могут Вас заинтересовать

35825. Економічний аналіз 709.5 KB
  Зміст експлуатаційної фази життєвого циклу проекту. Концепція беззбитковості інвестиційного проекту. Мета завдання та зміст технічного аналізу проекту. Методологія аналізу динамічності проекту.
35826. Среда функционирования предприятия. Факторы внешней и внутренней рыночной среды и их влияние на эффективность функционирования предприятия. Конкурентоспособность предприятия и продукции 801 KB
  От качества его разработки в значительной мере зависит успех реализации проекта. Календарный план подписывается главным инженером проекта и заказчиком как согласовывающей инстанцией. Расчет показателей экономической эффективности инвестиционного проекта NPV PI IRR MIRR PP Проект связанный с реализацией полного цикла вложения инвестиций от начала вложения капиталов до завершения работ называется инвестиционным. По масштабам чаще всего масштаб проекта определяется размером инвестиций: малые проекты действие которых...
35827. Экономическая теория и ее структурные элементы 1.31 MB
  Товар в системе маркетинга его классификация. Товар в сисме маркетингаего классификация. В системе маркетинга он рассматривается как совокупность полезных свойств наиболее полно обеспечивающих потребности целевой группы потребителей. В рамках маркетинга мультиатрибутивная модель товара является основой для принятия решений по его развитию и совершенствованию.
35829. Электротехника. Шпаргалка 1.1 MB
  Первая схема выполнена с помощью двух реле типа РНТ565. Она выполняется в трехфазном исполнении с помощью реле РНТ565 с Третья схема наиболее совершенная она сочетает два принципа отстройки РЗ от тока небаланса: торможение при котором ток Jcp автоматически увеличивается с ростом тока КЗ и применение НТТ. Норм и ненорм режимы 2 ОБЩИЕ ПРИНЦИПЫ ИСПОЛНЕНИЯ РЕЛЕ работа на переменном токе 3 ИНДУКЦИОННЫЕ РЕЛЕ. РЕЛЕ ТОКА РЕЛЕ МОЩНОСТИ 4 МТЗ.
35830. Свойства Плутония 1.08 MB
  это основной вид топлива для различных реакторов; соединение урана и плутония с неметаллами: кислородом азотом угреродом; Такие соединения имеют: 1. =1097 г =117 г =1342 г =1432 г Чем выше плотность ядерного топлива тем выше коэффициент воспроизводства. В достехиометрических оксидах смешанного топлива может быть . Сравнительные свойства оксидного и других видов керамического ядерного топлива Соединение Решетка Теоретическая плотность г см3 Тпл К Содерж.
35832. ВЗАИМОДЕЙСТВИЕ ТЕЛ. ПЕРВЫЙ ЗАКОН НЬЮТОНА 961 KB
  ИНЕРЦИАЛЬНЫЕ СИСТЕМЫ ОТСЧЕТА Первый закон Ньютона: существуют такие системы отсчета относительно которых поступательно движущееся тело сохраняет свою скорость постоянной если на него не действуют другие тела или действие других тел компенсируется. Прямолинейное равномерное движение тела в инерциальной системе отсчета называют движением по инерции. Сила векторная физическая величина являющаяся мерой воздействия одного тела на другое в результате которого возникает ускорение тела или отдельных его частей . Если на два тела разных...
35833. Структурная схема подключения ЦАП к микропроцессорной системе с использованием ША, ШУ, ШД. Программа на ассемблере для вывода данных 931.4 KB
  MOV Аl FFh загрузка в 8битный акк. При адресации испся регистры общ значения Dx и l MOV Аl 378h в регр Dx попадает число 378 адрес внешнего устройства OUT Dx l содержимое аккра попадает во внешн порт адрес котго хранится в Dx это косвенная адресация. формируется сигнал чтения MOV Dx 379h в регр Dx попадает число 379 IN l Dx инфия из порта адрес котго хранится в регре Dx попадает в аккр 3. Программа выполняет: Выставляет данные на 378 порт; выдает сигн...