Matthijs,
对于关系设计,你必须看看这些对象是如何相互关联的,然后在数据模型决定。这是一份初稿和我所假设的条件。你可能对你的案例有不同的规则。发布他们,有人应该能够发布一个准确的模型。
Each book can be written by many authors and each author can write different books. (M:N)
RECIPES <--> BOOKS (M:N)
RECIPES <--> INGREDIENTS (M:N)
These would be the initial set of tables.
BOOKS, AUTHORS, BOOKS_AUTHORS_ASC, RECIPES, BOOKS_RECIPES_ASC,
INGREDIENTS, RECIPES_INGREDIENTS_ASC.
如果媒体是关系到一个只有一本书,你将有一个不同的表,说,媒体有以下的列。 BOOK_ID是此媒体关联的父列。
MEDIA
-------------------------------------
MEDIA_ID NUMBER -- Primary-key
BOOK_ID NUMBER -- Foreign Key..
MEDIA_TYPE varchar2(20) -- 'IMAGE','VIDEO' etc..
other_column1 varchar2(50),
other_column2 varchar2(50)
-- so on..
如果给定的图像/视频可以关联到多本书籍每本书可以有不同的图像,那么你就必须为协会就像一个不同的实体..
Media
--------
Media_id number -- primary key
media_type varchar2(10),
media_name varchar2(100),
--- other columns.
MEDIA_BOOK_ASC
--------------
MEDIA_BOOK_ASC_ID NUMBER,
MEDIA_ID NUMBER, --foreign key to media table.
BOOK_ID NUMBER, --foreign key to book table
--other columns related to associations...
嘿乔:什么(非常快:-))工具,您使用的呢? – Peter 2011-03-01 21:46:43
@Peter:Microsoft Visio中 – 2011-03-01 21:48:19
乔,感谢您的回答,这是很清楚。 – Matthijs 2011-03-01 22:29:42