跳至內容
主選單
主選單
移至側邊欄
隱藏
導覽
首頁
近期變更
隨機頁面
MediaWiki說明
Taiwan Tongues 台語維基
搜尋
搜尋
外觀
建立帳號
登入
個人工具
建立帳號
登入
檢視 域鍵範式 的原始碼
頁面
討論
臺灣正體
閱讀
檢視原始碼
檢視歷史
工具
工具
移至側邊欄
隱藏
操作
閱讀
檢視原始碼
檢視歷史
一般
連結至此的頁面
相關變更
特殊頁面
頁面資訊
外觀
移至側邊欄
隱藏
←
域鍵範式
由於以下原因,您無權編輯此頁面:
您請求的操作只有這些群組的使用者能使用:
使用者
、taigi-reviewer、apibot
您可以檢視並複製此頁面的原始碼。
關係資料庫設計的'''域鍵範式'''( Domain-key normal form ,'''DK / NF'''),是資料庫規範化的一个級別,以去除關係無包含著域的約束(domain constraint)的其他的約束。 域約束指出予定屬性的取值範圍。鍵約束指出這幾个屬性唯一確定了表中的一行。 域鍵範式予一个關係的所有的約束攏是鍵和域(domain)定義的邏輯蘊涵;因為執行對鍵與域的限制佮條件了後,共致使所有的約束攏滿足。滿足域鍵範式,予資料庫避免著毋是清楚的域約束抑是鍵約束的一般性約束。這種一般性約束往往需要特殊編程(如存儲過程)來檢驗敢有滿足。 第三範式、BC 範式、第四範式佮第五範式是域鍵範式的特例。因為函數依賴、多值依賴佮連接(join)依賴攏會當轉換做(超)鍵。遮的範勢相信若無討論,通看干焦賰的約束。 ==例== 下跤是違反著 DKNF: ( 假定好額人屬性包括了預定集樣本集中所有好額人的名;富人類型屬性取值為'Eccentric Millionaire','Eccentric Billionaire','Evil Millionaire','Evil Billionaire';美金淨值屬性取值為大於等於一 , 零 , 零的整數 ) 佇富人類型屬性佮美金淨值屬性之間存在約束,就算袂當對一个屬性捒甲另外一个屬性:Eccentric Millionaire 抑是 Evil Millionaire 的美金淨值應該佇一 , 零 , 空到九百九十九 , 九百九十九 , 九百九十九,而且 Eccentric Billionaire 抑是 Evil Billionaire 的美金淨值應大於等於一 , 零 , 零 , 零。該約束既然毋是域約束(domain constraint)嘛毋是鍵約束(key constraint)。 因為袂使用域約束抑是鍵約束來保證表中無出現無一致的 Wealthy Person Type / Net Worth。 違反 DKNF 的問題會當共 Wealthy Person Type 屬性域改做兩个值:'Evil'佮'Eccentric',百萬富翁抑是十億富翁的狀態會當通過 Net Worth in Dollars 屬性確定,因此無損失信息。 ==外鍵== 表之間的關係(Relationships)若袂當表示為外鍵,顯然違反著域鍵範式。比如講," Parent ID " 屬性會當指向幾張表示的某一个,這就決定佇另外的屬性 " Parent Type " , 這違反了 DKNF . ==參見== * 引用完整性 * 資料庫正規化 ==參考文獻== ==外部連結== * Database Normalization Basics by Mike Chapple ( About . com ) * An Introduction to Database Normalization by Mike Hillyer . * Normalization by ITS , University of Texas . * A tutorial on the first 三 normal forms by Fred Coulson * Description of the database normalization basics by Microsoft [[分類: 待校正]]
返回到「
域鍵範式
」。