Проектирование баз данных
Проектирование баз данных, как и проектирование информационных систем, состоит из нескольких этапов. Одним из важных этапов проектирования является создание диаграмм «сущность-связь». Для этого необходимо обозначить сущности, добавить к ним атрибуты, установить ключи и объединить сущности при помощи связей. Все это можно проделывать вручную, просто рисуя соответствующие диаграммы на бумаге. В те времена, когда была предложена концепция «сущность- связь», так и делали, однако при наличии компьютера с развитым графическим интерфейсом рисунки на бумаге отошли в прошлое. Довольно быстро был создан целый класс программных продуктов, позволяющий не только выполнять моделирование в парадигме «сущность-связь», но и генерировать на основе созданных моделей схему базы данных для практически любых распространенных серверов баз данных. Одной из таких программ является ErWin Data Modeler (рис. 6.18).
Alll 'ISM Ii I WViiii i-.it.1 ^1(, ,Ii-I,'-I |М...|.-1 4Imiii 4.-.1.1(-( I Af I-, i sI Рис. 6.18. Окно программы ErWin Data Modeler |
При помощи этой программы можно быстро и легко создавать сущности, присваивать им атрибуты, ключи, создавать между ними связи. После того как схема создана, можно выбрать конкретный сервер баз данных и построить схему базы данных. При этом ErWin Data Modeler переводит созданную логическую модель на физический уровень представления и генерирует схему в соответствии с набором типов данных на конкретном выбранном сервере. Этот процесс носит название прямого проектирования (forward engineering).
Интересной особенностью ErWin Data Modeler является также возможность осуществить обратную операцию: извлечь схему из выбранного сервера баз данных и отобразить ее в качестве своей модели. Извлеченную схему можно затем изменить и снова осуществить прямую генерацию.
Надо отметить, что современные серверы баз данных часто оснащаются средствами моделирования модели «сущность-связь» или другими средствами создания схем баз данных.
Вопросы для самопроверки
1. Что такое «предметная область»?
2. Какие определения понятия «база данных» вам известны? Приведите минимум два.
3. Что такое «СУБД»?
4. Из каких компонентов состоит СУБД?
5. Каковы основные группы пользователей СУБД?
6. Что такое «модель данных»?
7. Какие виды классификаций СУБД вам известны?
8. Как СУБД классифицируются в зависимости от принятой модели данных?
9. Что такое «распределенная СУБД»?
10. Чем клиент-серверная СУБД отличается от встроенной?
11. Какие функции выполняет СУБД?
12. Какие модели данных вам известны?
13. Из каких уровней состоит трехуровневая модель представления данных ANSI- SPARC?
14. Что такое «элемент данных»?
15. Что такое «запись»? Что такое «схема записи»?
16. Зачем нужно ключевое поле?
17. Что такое «сущность» в модели «сущность-связь»? Приведите пример.
18. Что такое «класс сущностей»?
19. Что такое «атрибуты и идентификаторы сущностей»?
20. Что такое «связи сущностей», что они определяют? Какие типы связей вам известны?
21. Чем отличается связь один ко многим от связи многие ко многим? Приведите примеры.
22. Каковы преимущества и недостатки ER-моделирования?
23. Что такое «реляционная модель данных»? Кем она была предложена?
24. Назовите по крайней мере две системы, применяющиеся для непрерывного моделирования?
25. Каким условиям должны удовлетворять данные в реляционных таблицах?
26. Перечислите хотя бы 9 из 12 правил Кодда.
27. Что такое «первичный ключ»?
28. Что такое «внешний ключ», какова его роль в установлении связи между таблицами?
29. Что такое «ссылочная целостность»? Каковы последствия несоблюдения ссылочной целостности для базы данных?
30. В чем заключаются первая, вторая и третья нормальные формы?
31. Какие группы операторов языка SQL вам известны?
32. Какие операторы входят в группу операторов манипулирования данными? Каково их назначение?
33. Перечислите преимущества реляционной модели.
34. Каковы причины возникновения постреляционных моделей СУБД?
35. Чем OODM отличается от ER-модели?
36. Перечислите преимущества и недостатки OODM.
Литература
1. КренкеД. Теория и практика построения баз данных. СПб.: Питер, 2003.
2. Кузин А. В., Jleeonucoea В. С. Базы данных. M.: Академия, 2008.
3. Марков А. С., Лисовский К. Ю. Базы данных: введение в теорию и методологию. M.: Финансы и статистика, 2006.
4. Райордан P Основы реляционных баз данных. M.: Русская редакция, 2001.
Дата добавления: 2016-04-14; просмотров: 728;