PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 其他群組 > 七嘴八舌異言堂
帳戶
密碼
 

回應
 
主題工具
青年阿要立死志
New Member
 

加入日期: Sep 2006
文章: 9
請問資料庫高手 --- 有關如何驗證是否已正規化 問題

請問一下
假設一個系統
資料用關聯式表格呈現

不確定該系統有無達BCNF
我也看不太出來
欄位資料多
直覺就沒正規化

那如果說要廠商證明他們有正規化
是要請他們提供什麼文件? ER model和正規化後的資料表嗎 ?

有什麼辦法可以馬上測試該資料表未正規化?
因欄位資料之間的關聯是其他domain
我自認沒那個能力看出各欄位之間是否有相關聯

謝謝
     
      
舊 2006-10-19, 11:43 AM #1
回應時引用此文章
青年阿要立死志離線中  
wahahung
New Member
 

加入日期: Feb 2005
文章: 2
正規化與否,與domain 的東西有很大的關聯,
這不是資料庫軟體做得到的事(也不是他們的責任).
要證明表格有作過正規化
ER model和正規化後的資料表 應該是唯一的路徑.
不過,這應該是個非常辛苦的工作,需要對domain相當理解才行.

只是為何要求一定要正規化到BCNF 呢??
很多系統為了查詢上的方便與效能,
都會小小的偷吃步一下,在很多地方放了從重複的資料項.
也沒啥不好阿
有時正規化的太細,反而綁手綁腳.
查詢一個小東西,要join 一堆table 也不是好事呀...
 
舊 2006-10-19, 12:54 PM #2
回應時引用此文章
wahahung離線中  
cobrachen
New Member
 

加入日期: Oct 2006
文章: 7
通常到第三層的正規劃已經是大多數設計時的考慮,因為設計的時候也要兼顧到回應時間的需求,而且很多資料庫也會讓其他的軟體製作報告輸出之用,這些報表的射記者對於資料庫的認識不會有原始設計者深入,過量正規劃還可能導致報告設計上的困難與除錯的問題。
舊 2006-10-19, 01:04 PM #3
回應時引用此文章
cobrachen離線中  
穩ㄝ
Major Member
 

加入日期: Oct 2005
您的住址: 淡水
文章: 129
BCNF只是資料庫正規化的一個理想值....
可是有時候為了做到BCNF....
可能會犧牲到效能....
所以....一般廠商....
大概都會像樓上大大說的那樣....
有一些偷吃步的動作....
因為....現在硬碟空間根本不算什麼....
可是....查詢效能才是USER比較CARE的....
舊 2006-10-19, 01:04 PM #4
回應時引用此文章
穩ㄝ離線中  
michelle_lai529
*停權中*
 

加入日期: Dec 2005
文章: 21
查詢時的需求才是重點~~BCNF為了是什麼,爽度嗎,省一個欄位,拖慢了效能,限制了以後的發展,何必呢~~
廠商在設計上,最重要的是達到客戶的需求,至於那些看不到的設計技巧,廠商實在沒有義務要告知~~
不是自認沒那個能力看出各欄位之間是否有相關聯,廠商有有什麼義務去證明是否做到BCNF
PS:自己寫資料庫時,BCNF真的只是為了爽度,實際的開發起來,還真的不會這樣來讓自己綁手綁腳的,搞到最後,自己都忘了關連到哪裡去了

此文章於 2006-10-19 01:28 PM 被 michelle_lai529 編輯.
舊 2006-10-19, 01:25 PM #5
回應時引用此文章
michelle_lai529離線中  
dts0069
Elite Member
 

加入日期: Feb 2003
您的住址: 台灣
文章: 4,086
個人不是高手,但還是說說自己的心得,個人認為正規化認定是看你的需求,簡單的說是將資料庫可輸入資料全輸入,過程中不會有重複要輸入,而如此後又能完全產生你所需求的表單,就算正規化了.

個人覺得正規化目的是考慮未來資料庫衍生壽命,但未來沒人知道會怎樣,能預估到什麼程度,真要照書上說的那套,那沒完沒了,寫的人是沒什麼,而負責輸入使用的人會很痛苦.

不知樓主要檢驗什麼?想太多了吧,資料庫資料能安全保存比較實際.

此文章於 2006-10-20 01:51 AM 被 dts0069 編輯.
舊 2006-10-20, 01:49 AM #6
回應時引用此文章
dts0069離線中  


回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是12:04 PM.


vBulletin Version 3.0.1
powered_by_vbulletin 2025。