
4 Проектирование таблиц
Описание типов полей таблицы «Фильм»
Поле |
Тип |
Правила |
Название фильма |
Varchar(15) |
PK, уникальное |
Код жанра |
Number(4) |
FK связь с таблицей жанры, >0 |
Продолжительность фильма |
Number(3) |
>0 |
Год выпуска |
Number(4) |
>0 |
Производитель |
Varchar(20) |
|
Код страны |
Number(4) |
FK связь с таблицей страны, >0 |
Количество проданных билетов |
Number(7) |
|
Выручка |
Number(12,2) |
|
Табл. 1. Описание типов полей таблицы «Фильм»
В таблице 1 будет храниться информация о фильмах. Эта таблица имеет следующие поля:
Название таблицы – первичный ключ таблицы - должен быть уникальным. Название фильма не может превышать 15 символов;
Код жанра – определяет код жанра, который берется из таблицы Жанры. Так как число жанров не может быть очень большим, то код жанра будет состоять из четырех цифр;
Продолжительность – определяет продолжительность фильма. Продолжительность фильма определяется минутами, в данном случае – это число, состоящее максимум из трех цифр, так как фильм с продолжительностью более 1000 минут невозможен;
Год выпуска – определяет год выпуска данного фильма. Год выпуска – число, состоящее из 4 цифр;
Производитель – определяет компанию производителя фильма. Производитель – корпорация или киностудия, ее название не может превышать 20 символов;
Код страны - определяет код страны, в которой проходили съемки, выбирается из таблицы Страны. Так как стран, имеющих отношение к новым фильмам не больше 1000, то код страны не будет превышать четырех цифр;
9
Количество проданных билетов – определяет количество проданных билетов на один фильм. Так как количество проданных билетов может достигать при длительном прокате миллиона штук, то для хранения такой информации будем использовать 7 символов;
Выручка – определяет общую выручку с проката картины.
Используемые типы данных. Так как выручка определяется числом проданных билетов, а оно может достигать миллиона, то выручка может достигать в разы больших значений, поэтому для хранения будем использовать 12 символов:
VARCHAR(L) - символьные данные фиксированной длины L байт.
NUMBER(a) – числовое значение с общим числом цифр a.
Описание типов полей таблицы «Сеансы»
Поле |
Тип |
Пояснение |
Дата |
Data |
PK, >0 |
Начало |
Varchar(5) |
PK, >0 |
Продолжительность |
Number(3) |
>0 |
Цена за билет |
Number(5,2) |
>0 |
Название фильма |
Varchar(15) |
FK, связь с таблицей фильмы |
Табл. 2. Описание типов полей таблицы «Сеансы»
В таблице 2 будет храниться информация о версиях программы. Эта таблица имеет следующие поля:
Дата – первичный ключ таблицы - должен быть уникальным. Дату показа фильма храним в формате даты;;
Начало – первичный ключ таблицы - должен быть уникальным;
Продолжительность – определяет продолжительность сеанса. Так же как и продолжительность фильма не может превышать 1000 минут, поэтому для хранения будем использовать 3 цифвы;
Цена – определяет цену на билет, определено больше ноля Цена на билет не превышает 1000 рублей, однако при записи цены используют две цифры после запятой (например 100,00 р.) поэтому будем использовать 5 символов, 2 из них после запятой;
Название – название фильма.
Используемые типы данных:
VARCHAR(L) - символьные данные фиксированной длины L байт;
NUMBER(a,b) – числовое значение с общим числом цифр a, и с количеством цифр после запятой b.
DATE - хранение даты и времени.
10
Описание типов полей таблицы «Свободные места»
Поле |
Тип |
Пояснение |
Начало |
Varchar(5) |
PK, >0 |
Дата |
Data |
PK, >0 |
Ряд |
Number(2) |
PK, >0 |
Место |
Number(2) |
PK, >0 |
Табл. 3. Описание типов полей таблицы «Свободные места»
В таблице 3 будет храниться информация о свободных местах на сеансы. Эта таблица имеет следующие поля:
Начало – первичный ключ таблицы - должен быть уникальным;
Дата – первичный ключ таблицы - должен быть уникальным;
Ряд – первичный ключ таблицы - должен быть уникальным;
Место – первичный ключ таблицы - должен быть уникальным.
Используемые типы данных:
VARCHAR(L) - символьные данные фиксированной длины L байт;
NUMBER(a,b) – числовое значение с общим числом цифр a, и с количеством цифр после запятой b.
DATE - хранение даты и времени.
Описание типов полей таблицы «Актеры»
Поле |
Тип |
Пояснение |
Актер |
Varchar(20) |
РК, Уникальное |
Название фильма |
Varchar(15) |
FK, связь с таблицей фильмы |
Табл. 4. Описание типов полей таблицы «Актеры»
В таблице 4 будет храниться информация об актерах. Эта таблица имеет следующие поля:
Актер первичный ключ таблицы- должен быть уникальным;
Название фильма – название фильма;
Используемые типы данных:
VARCHAR(L) - символьные данные фиксированной длины L байт.
11
Описание типов полей таблицы «Жанры»
Поле |
Тип |
Пояснение |
Код жанра |
Number(4) |
PK, >0, Уникальное |
Жанр |
Varchar(8) |
Уникальное |
Табл. 5. Описание типов полей таблицы «Жанры»
В таблице 5 будет храниться информация о жанрах. Эта таблица имеет следующие поля:
Код жанра первичный ключ таблицы- должен быть уникальным;
Жанр – определяет один из жанров фильмов. Название жанра не может превышать 8 символов;
Используемые типы данных:
VARCHAR (L) - символьные данные фиксированной длины L байт;
NUMBER(a,b) – числовое значение с общим числом цифр a, и с количеством цифр после запятой b.
Описание типов полей таблицы «Страна»
Поле |
Тип |
Пояснение |
Код страны |
Number(4) |
PK, >0, Уникальное |
Страна |
Varchar(15) |
Уникальное |
Табл. 6. Описание типов полей таблицы «Страна»
В таблице 6 будет храниться информация о странах. Эта таблица имеет следующие поля:
Код страны первичный ключ таблицы - должен быть уникальным;
Страна – страна-производитель.
Используемые типы данных:
VARCHAR(L) - символьные данные фиксированной длины L байт;
NUMBER(a,b) – числовое значение с общим числом цифр a, и с количеством цифр после запятой b.
12