База данных State Park (Государственный парк) состоит из двух сущностей: Park (Парк) и Lake (Озеро). Атрибуты этих двух сущностей и связей показаны на 3.4. Отображение диаграммы «сущность-связь» на реляционную схему приведено ниже. Сущности и связи между ними представлены в таблице 3.13. StatePark [ГосПарки] (Sid [П-номер]: integer, Sname [П-название]: string, Area [Площадь]: float, Distance [Расстояние]: float) Lake [Озера] (Lid [О-номер]: integer, Lname [О-название]: string, Depth [Глубина]: float, Main-Catch [Основной-Улов]: string) ParkLake [ОзераПарков] (Lid [О-номер]: integer, Sid [П-номер]: integer, Fishing-Opener [Открытие-Сезона]: date)
Данная схема представляет три сущности: StatePark, Lake и ParkLake. Сущность StatePark представляет все государственные парки штата Миннесота, а ее атрибутами являются уникальный национальный идентификатор Sid, название парка Sname, площадь парка в квадратных километрах Area, а также расстояние от Миннеаполиса – Distance. Сущность Lake также имеет уникальный идентификатор Lid и название Lname; средняя глубина озера хранится в атрибуте Depth, самый распространенный в озере вид рыб – в атрибуте Main-catch. Сущность ParkLake применяется для соединения запросов к обеим сущностям – StatePark и Lake. Она определяет озера, которые расположены на территории государственных парков. Ее атрибутами являются Lid, Sid, а также дата открытия сезона рыбной ловли на озере – Fishing-Opener. В данном случае мы предполагаем, что на разных озерах Открытие-Сезона происходит в разное время.
Таблица 3.13. Таблицы базы данных StatePark
Park | Sid | Sname | Area | Distance |
S1 | Итаска | 150,0 | 52 | |
S2 | Вудбери | 255,0 | 75 | |
S3 | Брайтон | 175,0 | 300 |
(а) Park
Lake | Lid | Lname | Depth | Main-Catch |
100 | Лино | 20,0 | Плотва | |
200 | Часка | 30,0 | Форель | |
300 | Суссекс | 45,0 | Плотва | |
400 | Тодд | 28,0 | Окунь |
(б) Lake
ParkLake | Lid | Sid | Fishing-Opener |
100 | S1 | 15.05 | |
200 | S1 | 15.05 | |
300 | S3 | 01.06 |
(в) ParkLake