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.  Как создать и инициализировать переменную пользовательского типа? Как обратиться к ее полям и методам из запроса?


 

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

20349. ПРОБЛЕМА АНТРОПОСОЦИОГЕНЕЗА. ТРУДОВАЯ ТЕОРИЯ ПРОИСХОЖДЕНИЯ ЧЕЛОВЕКА И ОБЩЕСТВА. ПРОБЛЕМА НЕДОСТАЮЩЕГО ЗВЕНА 45 KB
  ТРУДОВАЯ ТЕОРИЯ ПРОИСХОЖДЕНИЯ ЧЕЛОВЕКА И ОБЩЕСТВА. АСН процесс происхождения человека и общества. Сложность этого слова не попытка усложнить дело а стремление уже в названии подчеркнуть неразрывную связь происхождения человека и общества а также длительность последовательность процесса происхождения антропос от человека; социо общество; генез от генезиса. Победы Лоренца в споре оправдывает евгенику науку и практику вмешательства в генетику человека для избавления последнего от всех больных и неправильных генов.
20350. ПРОБЛЕМА СОЗНАНИЯ В ФИЛОСОФИИ. ОБЪЕКТИВНО-ИДЕАЛИСТИЧЕСКОЕ, ВУЛЬГАРНО-МАТЕРИАЛИСТИЧЕСКОЕ И ДИАЛЕКТИКО-МАТЕРИАЛИСТИЧЕСКОЕ ПОНИАНИЕ СОЗНАНИЕ. ТЕОРИЯ ОТРАЖЕНИЯ И СОЗНАНИЕ. ПРОБЛЕМА ИДЕАЛЬНОГО 45.5 KB
  ОБЪЕКТИВНОИДЕАЛИСТИЧЕСКОЕ ВУЛЬГАРНОМАТЕРИАЛИСТИЧЕСКОЕ И ДИАЛЕКТИКОМАТЕРИАЛИСТИЧЕСКОЕ ПОНИАНИЕ СОЗНАНИЕ. ТЕОРИЯ ОТРАЖЕНИЯ И СОЗНАНИЕ. сознание; 1. В истории развития взглядов на сознание отметим два момента.
20351. Ламповые высокочастотные генераторы с внешним возбуждением 362.5 KB
  Расчет генератора рассмотрим на типовом примере. Расчет анодной цепи генератора. Аналогичный расчет электрического режима работы ВЧ лампового генератора с внешним возбуждением можно провести по программе на языке Mathcad. Программа расчета электрического режима работы ВЧ лампового генератора Программа состоит из трех частей: ввода исходных данных DATE; расчета параметров генератора по анодной цепи ANODE; расчета параметров сеточной цепи генератора GRID.
20352. ТРАНЗИСТОРНЫЕ ГВВ 437.5 KB
  В биполярных транзисторах происходит перенос как основных носителей заряда в полупроводнике так и неосновных; в полевых только основных. Управление током прибора в биполярных транзисторах осуществляется за счет заряда неосновных носителей накапливаемых в базовой области; в полевых за счет действия электрического поля на поток носителей заряда движущихся в полупроводниковом канале причем поле направлено перпендикулярно этому потоку. Для увеличения мощности прибора в биполярных транзисторах используют многоэмиттерную структуру а в...
20353. Режимы работы транзисторно гВВ 270.5 KB
  Анализ работы и режимы работы транзисторного генератора с внешним возбуждением 9. Ключевой режим работы высокочастотного транзисторного генератора 9. Методика расчета ВЧ генератора с биполярным транзистором 9. Анализ работы и режимы работы транзисторного генератора с внешним возбуждением 9.
20354. СВЧ ТРАНЗИСТОРНЫЕ ГВВ 176 KB
  СВЧ ТРАНЗИСТОРНЫЕ ГВВ 12. Метод анализа линейных СВЧ устройств 12. Гибридноинтегральные СВЧ устройства и микрополосковые линии передачи 12. СВЧ транзисторный усилитель 12.
20355. АВТОГЕНЕРАТОРЫ И СТАБИЛИЗАЦИЯ ЧАСТОТЫ АВТОКОЛЕБАНИЙ 180.5 KB
  АВТОГЕНЕРАТОРЫ И СТАБИЛИЗАЦИЯ ЧАСТОТЫ АВТОКОЛЕБАНИЙ 14. Стабильность частоты автогенератора 14. Различительным признаком может являться не само значение частоты генерируемых колебаний а тип используемых электрических цепей. Способы стабилизации частоты автоколебаний: параметрическая с использованием обычных колебательных систем; кварцевая с использованием в качестве резонатора кристалла кварца; с диэлектрическим резонатором только в СВЧ диапазоне; молекулярная за счет индуцированного возбуждения атомов.
20356. СТАБИЛИЗАЦИЯ ДИСКРЕТНОГО МНОЖЕСТВА ЧАСТОТ 105 KB
  Автоматическая подстройка частоты 15. Частотная автоподстройка частоты 15. Фазовая автоподстройка частоты 15. Основными параметрами синтезатора являются: диапазон частот выходного сигнала количество N и шаг сетки частот fш долговременная и кратковременная нестабильность частоты уровень побочных составляющих в выходном сигнале и время перехода с одной частоты на другую.
20357. ДИОДНЫЕ СВЧ АВТОГЕНЕРАТОРЫ И УСИЛИТЕЛИ 98 KB
  ДИОДНЫЕ СВЧ АВТОГЕНЕРАТОРЫ И УСИЛИТЕЛИ 16. Физические основы работы генераторных СВЧ диодов 16. СВЧ диодные автогенераторы 16. СВЧ диодные генераторы с внешним возбуждением 16.