Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
БД 1.docx
Скачиваний:
4
Добавлен:
19.11.2019
Размер:
229.72 Кб
Скачать

3.6. Описание индексирования таблиц

Некластеризованные индексы

Имя таблицы

Столбец

Имя индекса

Назначение

1

Actors

name

IX_Actors

Используется для поиска.

2

Companies

name

IX_Companies

Используется для поиска.

3

Directors

name

IX_Directors

Используется для поиска.

4

Ganres

name

IX_Ganres

Используется для поиска.

5

Users

nickname

IX_Users

Используется для поиска.

6

Vid_Actors

actor_id

IX_Vid_Actors

Ускорение работы, т.к. этот столбец входит в внешний ключ.

7

Vid_Actors

video_id

IX_Vid_Actors_1

Ускорение работы, т.к. этот столбец входит в внешний ключ.

8

Vid_Companies

company_id

IX_Vid_Companies

Ускорение работы, т.к. этот столбец входит в внешний ключ.

9

Vid_Companies

video_id

IX_Vid_Companies_1

Ускорение работы, т.к. этот столбец входит в внешний ключ.

10

Vid_Director

director_id

IX_Vid_Director

Ускорение работы, т.к. этот столбец входит в внешний ключ.

11

Vid_Director

video_id

IX_Vid_Director_1

Ускорение работы, т.к. этот столбец входит в внешний ключ.

12

Vid_Ganres

ganre_id

IX_Vid_Ganres

Ускорение работы, т.к. этот столбец входит в внешний ключ.

Vid_Ganres

video_id

IX_Vid_Ganres_1

Ускорение работы, т.к. этот столбец входит в внешний ключ.

3.7. Диаграмма структуры бд

4. Список контрольных тестов для проверки корректности данных в таблицах

Для ограничений CK_oscars_act, CK_roles_act

INSERT INTO Actors

(actor_id, name, role_val, oscar_val)

VALUES (1, 1, -1, -1)

Для ограничения CK_rating

INSERT INTO Comments

(comment_id, user_id, video_id, datetime, usr_rating)

VALUES (1, 1, 1, '2010-01-01', 11)

Для ограничения CK_company_create

INSERT INTO Companies

(company_id, name, creation_date)

VALUES (1, 'Universal Pictures', '2013-01-01')

Для ограничения CK_film_val_dir, CK_oscar_val_dir

INSERT INTO Directors

(director_id, name, film_val, oscar_val)

VALUES (1, 'scott', -8, -16)

Для ограничения CK_pass

INSERT INTO Users

(user_id, nickname, password)

VALUES (1, 'nick', '01fa')

Для ограничения CK_video_cost

INSERT INTO Video

(video_id, cost, title, year)

VALUES (1, -200, 'nightmare', '2010')

5. Полный скрипт создания бд, таблиц, индексов и ограничений

Скрипт создания базы данных

USE [master]

GO

/****** Object: Database [Films] Script Date: 14.10.2012 19:39:30 ******/

CREATE DATABASE [Films]

CONTAINMENT = NONE

ON PRIMARY

( NAME = N'Films', FILENAME = N'D:\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\Films.mdf' , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )

LOG ON

( NAME = N'Films_log', FILENAME = N'D:\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\DATA\Films_0.ldf' , SIZE = 3136KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)

GO

ALTER DATABASE [Films] SET COMPATIBILITY_LEVEL = 100

GO

IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))

begin

EXEC [Films].[dbo].[sp_fulltext_database] @action = 'enable'

end

GO

ALTER DATABASE [Films] SET ANSI_NULL_DEFAULT OFF

GO

ALTER DATABASE [Films] SET ANSI_NULLS OFF

GO

ALTER DATABASE [Films] SET ANSI_PADDING OFF

GO

ALTER DATABASE [Films] SET ANSI_WARNINGS OFF

GO

ALTER DATABASE [Films] SET ARITHABORT OFF

GO

ALTER DATABASE [Films] SET AUTO_CLOSE OFF

GO

ALTER DATABASE [Films] SET AUTO_CREATE_STATISTICS ON

GO

ALTER DATABASE [Films] SET AUTO_SHRINK OFF

GO

ALTER DATABASE [Films] SET AUTO_UPDATE_STATISTICS ON

GO

ALTER DATABASE [Films] SET CURSOR_CLOSE_ON_COMMIT OFF

GO

ALTER DATABASE [Films] SET CURSOR_DEFAULT GLOBAL

GO

ALTER DATABASE [Films] SET CONCAT_NULL_YIELDS_NULL OFF

GO

ALTER DATABASE [Films] SET NUMERIC_ROUNDABORT OFF

GO

ALTER DATABASE [Films] SET QUOTED_IDENTIFIER OFF

GO

ALTER DATABASE [Films] SET RECURSIVE_TRIGGERS OFF

GO

ALTER DATABASE [Films] SET DISABLE_BROKER

GO

ALTER DATABASE [Films] SET AUTO_UPDATE_STATISTICS_ASYNC OFF

GO

ALTER DATABASE [Films] SET DATE_CORRELATION_OPTIMIZATION OFF

GO

ALTER DATABASE [Films] SET TRUSTWORTHY OFF

GO

ALTER DATABASE [Films] SET ALLOW_SNAPSHOT_ISOLATION OFF

GO

ALTER DATABASE [Films] SET PARAMETERIZATION SIMPLE

GO

ALTER DATABASE [Films] SET READ_COMMITTED_SNAPSHOT OFF

GO

ALTER DATABASE [Films] SET HONOR_BROKER_PRIORITY OFF

GO

ALTER DATABASE [Films] SET RECOVERY SIMPLE

GO

ALTER DATABASE [Films] SET MULTI_USER

GO

ALTER DATABASE [Films] SET PAGE_VERIFY CHECKSUM

GO

ALTER DATABASE [Films] SET DB_CHAINING OFF

GO

ALTER DATABASE [Films] SET FILESTREAM( NON_TRANSACTED_ACCESS = OFF )

GO

ALTER DATABASE [Films] SET TARGET_RECOVERY_TIME = 0 SECONDS

GO

USE [Films]

GO

/****** Object: Table [dbo].[Actors] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_PADDING ON

GO

Скрипт создания таблиц, индексов и ограничений

CREATE TABLE [dbo].[Actors](

[actor_id] [int] NOT NULL,

[name] [varchar](50) NOT NULL,

[role_val] [int] NULL,

[oscar_val] [int] NULL,

CONSTRAINT [PK_Actors] PRIMARY KEY CLUSTERED

(

[actor_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

SET ANSI_PADDING OFF

GO

/****** Object: Table [dbo].[Comments] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_PADDING ON

GO

CREATE TABLE [dbo].[Comments](

[comment_id] [int] NOT NULL,

[user_id] [int] NOT NULL,

[video_id] [int] NOT NULL,

[text] [varchar](max) NULL,

[datetime] [datetime2](7) NOT NULL,

[usr_rating] [tinyint] NULL,

CONSTRAINT [PK_Comments] PRIMARY KEY CLUSTERED

(

[comment_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO

SET ANSI_PADDING OFF

GO

/****** Object: Table [dbo].[Companies] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_PADDING ON

GO

CREATE TABLE [dbo].[Companies](

[company_id] [int] NOT NULL,

[name] [varchar](50) NOT NULL,

[creation_date] [datetime] NULL,

CONSTRAINT [PK_Companies] PRIMARY KEY CLUSTERED

(

[company_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

SET ANSI_PADDING OFF

GO

/****** Object: Table [dbo].[Directors] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_PADDING ON

GO

CREATE TABLE [dbo].[Directors](

[director_id] [int] NOT NULL,

[name] [varchar](50) NOT NULL,

[film_val] [int] NULL,

[oscar_val] [int] NULL,

CONSTRAINT [PK_Directors] PRIMARY KEY CLUSTERED

(

[director_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

SET ANSI_PADDING OFF

GO

/****** Object: Table [dbo].[Ganres] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_PADDING ON

GO

CREATE TABLE [dbo].[Ganres](

[ganre_id] [int] NOT NULL,

[name] [varchar](50) NOT NULL,

CONSTRAINT [PK_Ganres] PRIMARY KEY CLUSTERED

(

[ganre_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

SET ANSI_PADDING OFF

GO

/****** Object: Table [dbo].[Users] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_PADDING ON

GO

CREATE TABLE [dbo].[Users](

[user_id] [int] NOT NULL,

[nickname] [varchar](50) NOT NULL,

[password] [varchar](50) NULL,

CONSTRAINT [PK_Users] PRIMARY KEY CLUSTERED

(

[user_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

SET ANSI_PADDING OFF

GO

/****** Object: Table [dbo].[Vid_Actors] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Vid_Actors](

[actor_id] [int] NULL,

[video_id] [int] NULL

) ON [PRIMARY]

GO

/****** Object: Table [dbo].[Vid_Companies] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Vid_Companies](

[company_id] [int] NULL,

[video_id] [int] NULL

) ON [PRIMARY]

GO

/****** Object: Table [dbo].[Vid_Director] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Vid_Director](

[director_id] [int] NULL,

[video_id] [int] NULL

) ON [PRIMARY]

GO

/****** Object: Table [dbo].[Vid_Ganres] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

CREATE TABLE [dbo].[Vid_Ganres](

[ganre_id] [int] NULL,

[video_id] [int] NULL

) ON [PRIMARY]

GO

/****** Object: Table [dbo].[Video] Script Date: 14.10.2012 19:39:30 ******/

SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_PADDING ON

GO

CREATE TABLE [dbo].[Video](

[video_id] [int] NOT NULL,

[cost] [int] NULL,

[title] [varchar](50) NOT NULL,

[year] [int] NULL,

CONSTRAINT [PK_Video] PRIMARY KEY CLUSTERED

(

[video_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

) ON [PRIMARY]

GO

SET ANSI_PADDING OFF

GO

SET ANSI_PADDING ON

GO

/****** Object: Index [IX_Actors] Script Date: 14.10.2012 19:39:30 ******/

CREATE UNIQUE NONCLUSTERED INDEX [IX_Actors] ON [dbo].[Actors]

(

[name] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

SET ANSI_PADDING ON

GO

/****** Object: Index [IX_Companies] Script Date: 14.10.2012 19:39:30 ******/

CREATE UNIQUE NONCLUSTERED INDEX [IX_Companies] ON [dbo].[Companies]

(

[name] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

SET ANSI_PADDING ON

GO

/****** Object: Index [IX_Directors] Script Date: 14.10.2012 19:39:30 ******/

CREATE UNIQUE NONCLUSTERED INDEX [IX_Directors] ON [dbo].[Directors]

(

[name] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

SET ANSI_PADDING ON

GO

/****** Object: Index [IX_Ganres] Script Date: 14.10.2012 19:39:30 ******/

CREATE UNIQUE NONCLUSTERED INDEX [IX_Ganres] ON [dbo].[Ganres]

(

[name] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

SET ANSI_PADDING ON

GO

/****** Object: Index [IX_Users] Script Date: 14.10.2012 19:39:30 ******/

CREATE UNIQUE NONCLUSTERED INDEX [IX_Users] ON [dbo].[Users]

(

[nickname] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

/****** Object: Index [IX_Vid_Actors] Script Date: 14.10.2012 19:39:30 ******/

CREATE NONCLUSTERED INDEX [IX_Vid_Actors] ON [dbo].[Vid_Actors]

(

[actor_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

/****** Object: Index [IX_Vid_Actors_1] Script Date: 14.10.2012 19:39:30 ******/

CREATE NONCLUSTERED INDEX [IX_Vid_Actors_1] ON [dbo].[Vid_Actors]

(

[video_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

/****** Object: Index [IX_Vid_Companies] Script Date: 14.10.2012 19:39:30 ******/

CREATE NONCLUSTERED INDEX [IX_Vid_Companies] ON [dbo].[Vid_Companies]

(

[company_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

/****** Object: Index [IX_Vid_Companies_1] Script Date: 14.10.2012 19:39:30 ******/

CREATE NONCLUSTERED INDEX [IX_Vid_Companies_1] ON [dbo].[Vid_Companies]

(

[video_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

/****** Object: Index [IX_Vid_Director] Script Date: 14.10.2012 19:39:30 ******/

CREATE NONCLUSTERED INDEX [IX_Vid_Director] ON [dbo].[Vid_Director]

(

[director_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

/****** Object: Index [IX_Vid_Director_1] Script Date: 14.10.2012 19:39:30 ******/

CREATE NONCLUSTERED INDEX [IX_Vid_Director_1] ON [dbo].[Vid_Director]

(

[video_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

/****** Object: Index [IX_Vid_Ganres] Script Date: 14.10.2012 19:39:30 ******/

CREATE NONCLUSTERED INDEX [IX_Vid_Ganres] ON [dbo].[Vid_Ganres]

(

[ganre_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

/****** Object: Index [IX_Vid_Ganres_1] Script Date: 14.10.2012 19:39:30 ******/

CREATE NONCLUSTERED INDEX [IX_Vid_Ganres_1] ON [dbo].[Vid_Ganres]

(

[video_id] ASC

)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]

GO

ALTER TABLE [dbo].[Comments] WITH CHECK ADD CONSTRAINT [FK_Comments_Users] FOREIGN KEY([user_id])

REFERENCES [dbo].[Users] ([user_id])

ON DELETE CASCADE

GO

ALTER TABLE [dbo].[Comments] CHECK CONSTRAINT [FK_Comments_Users]

GO

ALTER TABLE [dbo].[Comments] WITH CHECK ADD CONSTRAINT [FK_Comments_Video] FOREIGN KEY([video_id])

REFERENCES [dbo].[Video] ([video_id])

ON DELETE CASCADE

GO

ALTER TABLE [dbo].[Comments] CHECK CONSTRAINT [FK_Comments_Video]

GO

ALTER TABLE [dbo].[Vid_Actors] WITH CHECK ADD CONSTRAINT [FK_Vid_Actors_Actors] FOREIGN KEY([actor_id])

REFERENCES [dbo].[Actors] ([actor_id])

ON DELETE CASCADE

GO

ALTER TABLE [dbo].[Vid_Actors] CHECK CONSTRAINT [FK_Vid_Actors_Actors]

GO

ALTER TABLE [dbo].[Vid_Actors] WITH CHECK ADD CONSTRAINT [FK_Vid_Actors_Video] FOREIGN KEY([video_id])

REFERENCES [dbo].[Video] ([video_id])

ON DELETE CASCADE

GO

ALTER TABLE [dbo].[Vid_Actors] CHECK CONSTRAINT [FK_Vid_Actors_Video]

GO

ALTER TABLE [dbo].[Vid_Companies] WITH CHECK ADD CONSTRAINT [FK_Vid_Companies_Companies] FOREIGN KEY([company_id])

REFERENCES [dbo].[Companies] ([company_id])

ON DELETE CASCADE

GO

ALTER TABLE [dbo].[Vid_Companies] CHECK CONSTRAINT [FK_Vid_Companies_Companies]

GO

ALTER TABLE [dbo].[Vid_Companies] WITH CHECK ADD CONSTRAINT [FK_Vid_Companies_Video] FOREIGN KEY([video_id])

REFERENCES [dbo].[Video] ([video_id])

ON DELETE CASCADE

GO

ALTER TABLE [dbo].[Vid_Companies] CHECK CONSTRAINT [FK_Vid_Companies_Video]

GO

ALTER TABLE [dbo].[Vid_Director] WITH CHECK ADD CONSTRAINT [FK_Vid_Director_Directors] FOREIGN KEY([director_id])

REFERENCES [dbo].[Directors] ([director_id])

ON DELETE CASCADE

GO

ALTER TABLE [dbo].[Vid_Director] CHECK CONSTRAINT [FK_Vid_Director_Directors]

GO

ALTER TABLE [dbo].[Vid_Director] WITH CHECK ADD CONSTRAINT [FK_Vid_Director_Video] FOREIGN KEY([video_id])

REFERENCES [dbo].[Video] ([video_id])

ON DELETE CASCADE

GO

ALTER TABLE [dbo].[Vid_Director] CHECK CONSTRAINT [FK_Vid_Director_Video]

GO

ALTER TABLE [dbo].[Vid_Ganres] WITH CHECK ADD CONSTRAINT [FK_Vid_Ganres_Ganres] FOREIGN KEY([ganre_id])

REFERENCES [dbo].[Ganres] ([ganre_id])

ON DELETE CASCADE

GO

ALTER TABLE [dbo].[Vid_Ganres] CHECK CONSTRAINT [FK_Vid_Ganres_Ganres]

GO

ALTER TABLE [dbo].[Vid_Ganres] WITH CHECK ADD CONSTRAINT [FK_Vid_Ganres_Video] FOREIGN KEY([video_id])

REFERENCES [dbo].[Video] ([video_id])

ON DELETE CASCADE

GO

ALTER TABLE [dbo].[Vid_Ganres] CHECK CONSTRAINT [FK_Vid_Ganres_Video]

GO

ALTER TABLE [dbo].[Actors] WITH CHECK ADD CONSTRAINT [CK_oscars_act] CHECK (([oscar_val]>=(0)))

GO

ALTER TABLE [dbo].[Actors] CHECK CONSTRAINT [CK_oscars_act]

GO

ALTER TABLE [dbo].[Actors] WITH CHECK ADD CONSTRAINT [CK_roles_act] CHECK (([role_val]>=(0)))

GO

ALTER TABLE [dbo].[Actors] CHECK CONSTRAINT [CK_roles_act]

GO

ALTER TABLE [dbo].[Comments] WITH CHECK ADD CONSTRAINT [CK_Rating] CHECK (([usr_rating]<(10) AND [usr_rating]>(0)))

GO

ALTER TABLE [dbo].[Comments] CHECK CONSTRAINT [CK_Rating]

GO

ALTER TABLE [dbo].[Companies] WITH CHECK ADD CONSTRAINT [CK_Company_create] CHECK (([creation_date]<getdate()))

GO

ALTER TABLE [dbo].[Companies] CHECK CONSTRAINT [CK_Company_create]

GO

ALTER TABLE [dbo].[Directors] WITH CHECK ADD CONSTRAINT [CK_film_val_dir] CHECK (([film_val]>=(0)))

GO

ALTER TABLE [dbo].[Directors] CHECK CONSTRAINT [CK_film_val_dir]

GO

ALTER TABLE [dbo].[Directors] WITH CHECK ADD CONSTRAINT [CK_oscar_val_dir] CHECK (([oscar_val]>=(0)))

GO

ALTER TABLE [dbo].[Directors] CHECK CONSTRAINT [CK_oscar_val_dir]

GO

ALTER TABLE [dbo].[Video] WITH CHECK ADD CONSTRAINT [CK_video_cost] CHECK (([cost]>=(0)))

GO

ALTER TABLE [dbo].[Video] CHECK CONSTRAINT [CK_video_cost]

GO

USE [master]

GO

22

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