2012-10-09 58 views
0

我正在設計一個圖書館管理數據庫,我被困在應該分開圖書館資源(例如書籍,視頻,音頻)到三個表或只有一個表包含所有資源信息,這是因爲大多數他們的列是相同的。設計一個圖書館管理數據庫

**Books** 
id 
title 
author 
isbn 
... 

**Audios** 
id 
title 
author 
isbn 
duration 
... 

**Videos** 
id 
title 
author 
isbn 
duration 
cast 

回答

1

我會繼續共同列在一個表中,並根據類型將它們分開:

library_items {id, type_id, title, author, isbn} 
item_types {id, name} 

類型表將包含圖書, 音頻視頻。

然後具有含附加列附加表:

library_audios (id, duration} 
library_videos {id, duration, cast} 
+0

但是,如果我想查詢一下,我需要查詢數據來自兩張桌子。這很好嗎? – mmcc

+0

是的,如果你的數據庫是一個關係數據庫系統,就像MySQL; PostgreSQL的;或Oracle,那麼它將進行優化以建立這些連接。 –

0

請作出單獨的表圖書,多媒體...... 書籍---類別,然後將子類,類別SR - 因爲沒有書籍

用於CD/DVD類型的音頻/視頻....它會更多的幫助充滿了對過濾器的數據...緩解數據庫訪問