Любую связь можно охарактеризовать:
1. Классом принадлежности сущности;
2. Степенью.
Все типовые объекты предметной области можно представить в виде сущностей и затем с помощью ER-диаграмм отобразить связи между этими сущностями. Полученная сеть может служить хорошей основой для создания таблиц реляционной базы. При создании таблиц, опираются на понятие ключа сущности, и непосредственно создание таблиц выполняется по шести правилам:
1.Если степень бинарной связи 1:1 и класс принадлежности обеих сущностей обязателен, то потребуется одна таблица. Первичным ключом отношения может выступать ключ любой из двух сущностей;
2.Если степень бинарной связи 1:1 и класс принадлежности только одной сущности обязателен, то потребуется две таблицы. Причем ключевой атрибут сущности с необязательным классом принадлежности нужно вставить как атрибут во вторую таблицу;
3.Если степень бинарной связи 1:1 и класс принадлежности обеих сущностей не обязателен, то ─ три таблицы. Третья таблица отражает связи м/у ключами обеих сущностей;
4.Если степень бинарной связи 1:n и класс принадлежности n-связной сущности обязателен, то потребуется две таблицы. Ключ односвязной сущности нужно добавить атрибутом в таблицу n-связной сущности;
5.Если степень связи 1:n и класс принадлежности n-связной сущности необязательный ─ три таблицы. Третья таблица отражает связи и должна содержать ключи обеих сущностей в качестве атрибутов.
6.Если степень m:n ─ три таблицы. Третья таблица отражает ключи и связи обеих сущностей. В качестве ключевого в третьей таблице выбирается ключ той сущности, который характеризуется наибольшим количеством участия в экземплярах связи.
В инфологическом проектировании целью было получить набор таблиц отношений реляционной базы, но не отражать зависимости между атрибутами каждого отдельного отношения.
На рисунке 1 показана ER-диаграмма для данной базы данных:
Рис 1 ER-диаграмма
Рис 2 ER-диаграмма с помощью Сasestudio
Скрипт на базу:
' Created 20.11.2009
' Modified 20.11.2009
' Project
' Model
' Company
' Author
' Version
' Database Access 2000
'=======================================================
'=== MS Access 2000 database creation method
'===
'=== 1. Create a new database in the MS Access 2000
'=== 2. Create a new module
'=== 3. Copy the CASE Studio 2 output SQL script into the new MS Access 2000 module
'=== 4. Select from main menu "Tools" item "References..." and check the "Microsoft DAO 3.6 Object Library."
'=== 5. Place your mouse cursor somewhere in the main procedure Main()
'=== 6. Run the module code (Click the "Run Sub/UserForm" button or press F5)
'=======================================================
Public dbs As DAO.Database
Public tdf As DAO.TableDef
Public idx As DAO.Index
Public rel As DAO.Relation
Sub Main()
Set dbs = CurrentDb()
On Error GoTo ErrorHandler
Call CreateTables
Call CreatePrimaryKeys
Call CreateIndexes
Call CreateAlterKeys
Call CreateRelations
MsgBox "Script successfully processed.", vbInformation
Exit Sub
ErrorHandler:
Select Case Err.Number
Case 3010
MsgBox "Table " & tdf.Name & " allready exist!", vbInformation
Err.Clear
Case 3284
MsgBox "Index " & idx.Name & " for table " & tdf.Name & " allready exist!", vbInformation
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.