Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Sabelnikov_lab3_2_2_DataBases.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.76 Mб
Скачать
  1. Изменение таблиц базы данных

  1. Установка огр аничений и внешних ключей

USE [Tester]

ALTER TABLE [dbo].[Account] WITH CHECK ADD CONSTRAINT [FK_Account_Type] FOREIGN KEY([Account_Type])

REFERENCES [dbo].[Type] ([Id])

ALTER TABLE [dbo].[Account] CHECK CONSTRAINT [FK_Account_Type]

ALTER TABLE [dbo].[Question] WITH CHECK ADD CONSTRAINT [UN_Question_Id_Test] FOREIGN KEY([Id_Test])

REFERENCES [dbo].[TestCase] ([Id])

ALTER TABLE [dbo].[Question] CHECK CONSTRAINT [UN_Question_Id_Test]

ALTER TABLE [dbo].[Session] WITH CHECK ADD CONSTRAINT [FK_Session_Account] FOREIGN KEY([Id_Account])

REFERENCES [dbo].[Account] ([Id])

ALTER TABLE [dbo].[Session] CHECK CONSTRAINT [FK_Session_Account]

ALTER TABLE [dbo].[Session] WITH CHECK ADD CONSTRAINT [FK_Session_TestCase] FOREIGN KEY([Id_Test])

REFERENCES [dbo].[TestCase] ([Id])

ALTER TABLE [dbo].[Session] CHECK CONSTRAINT [FK_Session_TestCase]

ALTER TABLE [dbo].[TestCase] WITH CHECK ADD CONSTRAINT [FK_TestCase_Id_Creator] FOREIGN KEY([Id_Creator])

REFERENCES [dbo].[Account] ([Id])

ALTER TABLE [dbo].[TestCase] CHECK CONSTRAINT [FK_TestCase_Id_Creator]

ALTER TABLE [dbo].[TestCase] WITH CHECK ADD CONSTRAINT [CK_TestCase_QuestionAmount] CHECK (([Questions_Amount]<(80) AND [Questions_Amount]>(0)))

ALTER TABLE [dbo].[TestCase] CHECK CONSTRAINT [CK_TestCase_QuestionAmount]

  1. Скрипт добавления нового столбца в таблицу Account

USE [Tester]

ALTER TABLE [dbo].[Account]

ADD passwd nvarchar(100) not null default '';

  1. Дизайн отношения Account перед модификацией

  1. Дизайн отношения Account после модификации

  1. Диаграмма базы данных

  1. Диаграмма базы данных Tester

  1. Удаление таблиц базы данных

  1. Удаление таблиц Question и Session

USE [Tester]

DROP TABLE [dbo].[Question]

DROP TABLE [dbo].[Session]

Восстановление дизайна таблиц производим при помощи скриптов вначале отчета.

  1. Занесение информации в таблицы базы данных

  1. Скрипт занесения информации во все таблицы

USE [Tester]

INSERT INTO [dbo].[Type]([Name],[Description],[Rights])

VALUES

('Teacher','Can create and modify his own test cases',3),

('Student','Can only pass tests',1),

('Banned','Can''t do anything',0),

('Admin','Can delete, modify and create everything',7)

INSERT INTO [dbo].[Account]

([Nick_Name],[Full_Name],[Account_Type],[Notes])

VALUES

('petro','Василий Петрович',2,'Учитель Географии'),

('danger','Плохов Взлом',6,'Пользователь-нарушитель '),

('student','Игорь',5,'Хороший студент'),

('a.shostack','Анатолий Василиевич',2,'Преподаватель ОБД'),

('root','Вася',7,'Администратор')

Set DateFormat YMD

INSERT INTO [dbo].[TestCase]

([Name],[Description],[Id_Creator],[Creation_Date],[Time_To_Answer],[Questions_Amount])

VALUES

('География','Вопросы по курсу 5-го класса',3,'2014-02-10','00:09:00',3),

('ОБД-1','Общие вопросы по курсу ОБД',13,'2013-12-21','00:06:00',2)

INSERT INTO [dbo].[Question]

([Name],[Answers],[Right_Answers],[Id_Test])

VALUES

('Как называется четвертая по счету планета?','Земля//Венера//Марс//Юпитер','s//2',2),

('Какие спутники относятся к Марсу?','Фобос//Деймос//Каллисто//Леда//Лиситея','m//0//1',2),

('Виды БД:','Иерархическая//Объектно-Ориентированная//Реляционная//Сетевая//Эпителиальная//Соединительная//Нервная//Мышечная','m//0//1//2//3',3),

('Что такое БД?','Это совокупность данных, хранимых в соответствии со схемой данных, манипулирование которыми выполняют в соответствии с правилами средств моделирования данных.//Это мировоззренческая позиция, выражающаяся в отрицании осмысленности человеческого существования, значимости общепринятых нравственных и культурных ценностей, непризнании любых авторитетов//Это принятые в обществе представления о хорошем и плохом, правильном и неправильном, добре и зле, а также совокупность норм поведения, вытекающих из этих представлений.','s//0',3),

('Вы любите БД?','Да :)//Нет (но вы не правы)','s//0',3)

INSERT INTO [dbo].[Session]

([Id_Account],[Id_Test],[Passed_Questions],[Answers],[Start_Time])

VALUES

(11,3,'3//4','0|1|2|3|4//0','2014-02-16 21:46:15.000')

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