亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

據庫的主鍵與外鍵--轉載

2024-07-21 02:45:09
字體:
來源:轉載
供稿:網友
主鍵和外鍵是把多個表組織為一個有效的關系數據庫的粘合劑。主鍵和外鍵的設計對物理數據庫的性能和可用性都有著決定性的影響。

必須將數據庫模式從理論上的邏輯設計轉換為實際的物理設計。而主鍵和外鍵的結構是這個設計過程的癥結所在。一旦將所設計的數據庫用于了生產環境,就很難對這些鍵進行修改,所以在開發階段就設計好主鍵和外鍵就是非常必要和值得的。

主鍵:

關系數據庫依賴于主鍵---它是數據庫物理模式的基石。主鍵在物理層面上只有兩個用途:

      1. 惟一地標識一行。

      2. 作為一個可以被外鍵有效引用的對象。

基于以上這兩個用途,下面給出了我在設計物理層面的主鍵時所遵循的一些原則:

      1. 主鍵應當是對用戶沒有意義的。如果用戶看到了一個表示多對多關系的連接表中的數據,并抱怨它沒有什么用處,那就證明它的主鍵設計地很好。

      2. 主鍵應該是單列的,以便提高連接和篩選操作的效率。

     注:使用復合鍵的人通常有兩個理由為自己開脫,而這兩個理由都是錯誤的。其一是主鍵應當具有實際意義,然而,讓主鍵具有意義只不過是給人為地破壞數據庫提供了方便。其二是利用這種方法可以在描述多對多關系的連接表中使用兩個外部鍵來作為主鍵,我也反對這種做法,理由是:復合主鍵常常導致不良的外鍵,即當連接表成為另一個從表的主表,而依據上面的第二種方法成為這個表主鍵的一部分,然,這個表又有可能再成為其它從表的主表,其主鍵又有可能成了其它從表主鍵的一部分,如此傳遞下去,越靠后的從表,其主鍵將會包含越多的列了。

      3. 永遠也不要更新主鍵。實際上,因為主鍵除了惟一地標識一行之外,再沒有其他的用途了,所以也就沒有理由去對它更新。如果主鍵需要更新,則說明主鍵應對用戶無意義的原則被違反了。

     注:這項原則對于那些經常需要在數據轉換或多數據庫合并時進行數據整理的數據并不適用。

      4. 主鍵不應包含動態變化的數據,如時間戳、創建時間列、修改時間列等。

      5. 主鍵應當有計算機自動生成。如果由人來對主鍵的創建進行干預,就會使它帶有除了惟一標識一行以外的意義。一旦越過這個界限,就可能產生認為修改主鍵的動機,這樣,這種系統用來鏈接記錄行、管理記錄行的關鍵手段就會落入不了解數據庫設計的人的手中。


外鍵是數據庫一級的一個完整性約束,就是數據庫基礎理論書中所說的“參照完整性”的數據庫實現方式。

外鍵屬性當然是可以去掉的,如果你不想再用這種約束,對編程當然不會有什么影響,但相應的錄入數據的時候就不對錄入的數據進行“參照完整性”檢查了。   

例如有兩個表

A(a,b) :a為主鍵,b為外鍵(來自于B.b)

B(b,c,d) :b為主鍵    

如果我把字段b的外鍵屬性去掉,對編程沒什么影響。

如上面,A中的b要么為空,要么是在B的b中存在的值,有外鍵的時候,數據庫會自動幫你檢查A的b是否在B的b中存在。

1、外建表達的是參照完整性:這是數據固有的,與程序無關。因此,應該交給DBMS來做。

2、使用外建,簡單直觀,可以直接在數據模型中體現,無論是設計、維護等回有很大的好處,特別是對于分析現有的數據庫的好處時非常明顯的--前不久我分析了一個企業現有的數據庫,里面的參照完整性約束有的是外鍵描述,有的是用觸發器實現,感覺很明顯。當然,文檔里可能有,但是也可能不全,但是外鍵就非常明顯和直觀。

3、既然我們可以用觸發器或程序完成的這個工作(指參照完整性約束),DBMS已經提供了手段,為什么我們要自己去做?而且我們做的應該說沒有RDBMS做得好。實際上,早期的RDBMS并沒有外鍵,現在都有了,我認為數據庫廠商增加這個功能是有道理的。從這個角度來說,外鍵更方便。

4、關于方便,根據我帶項目的情況來看,程序員確實有反映,主要是在調試時輸入數據麻煩:如果數據可以違反參照完整性,那么就是說參照完整性本身就不對名譽業務沖突,此時也不應該用觸發期貨程序實現;否則,說明數據是錯誤的,根本就不應該進入數據庫!而且,這也應該是測試系統的一個內容:阻止非法數據。實際上,前臺程序應該對這種提交失敗做出處理。數據是企業的而非程序的,儲程序要盡量與數據分離,反之亦然。

最后說一下,建鍵幾個原則:

1、 為關聯字段創建外鍵。

2、 所有的鍵都必須唯一。

3、避免使用復合鍵。

4、外鍵總是關聯唯一的鍵字段。



本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/c04s31602/archive/2009/12/30/5107568.aspx
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产美女精品免费电影| 国产成人亚洲综合91精品| 永久555www成人免费| 国产精品麻豆va在线播放| 97久久精品国产| 久久久久国产精品www| 日产日韩在线亚洲欧美| 日日噜噜噜夜夜爽亚洲精品| 91久久综合亚洲鲁鲁五月天| 欧美性猛交xxxx黑人| 亚洲激情视频在线观看| 精品magnet| 国产精品美女无圣光视频| 色伦专区97中文字幕| 国产成人精品综合| 国产一区二区三区四区福利| 久久久久久亚洲精品中文字幕| 久久艳片www.17c.com| 精品一区二区电影| 国产欧洲精品视频| 久久久久久久影视| 亚洲精品视频播放| 日本成人在线视频网址| 亚洲天堂av在线免费观看| 亚洲国产精品小视频| 亚洲mm色国产网站| 亚洲国产精品国自产拍av秋霞| 欧美第一黄色网| 国产精品视频免费在线观看| 欧美在线视频一二三| 夜夜嗨av色一区二区不卡| 国产精品丝袜久久久久久高清| 91精品国产综合久久男男| 国产精品久久久久久久久久新婚| 久久久久久久av| 亚洲精品99久久久久中文字幕| 久久视频在线观看免费| 国产精品久久久久久久久久ktv| 欧美性色19p| www.日韩视频| 尤物精品国产第一福利三区| 国产性猛交xxxx免费看久久| 欧美另类精品xxxx孕妇| 亚洲大胆美女视频| 亚洲自拍欧美另类| 精品久久久精品| 综合国产在线观看| 久久久久久久激情视频| 久久视频在线免费观看| 97视频在线观看视频免费视频| 97精品国产aⅴ7777| 欧美乱大交xxxxx另类电影| 久久精品国产亚洲精品2020| 国产精品中文字幕在线观看| 欧美日韩免费观看中文| 亚洲成人久久久| 最近中文字幕日韩精品| 一本色道久久88亚洲综合88| 国产精品女视频| 欧美性猛交xxxx久久久| 国产精品你懂得| 日韩成人中文字幕在线观看| 亚洲精品视频免费在线观看| 精品久久久久人成| 91精品国产九九九久久久亚洲| 亚洲成**性毛茸茸| 日韩av一区二区在线观看| 国产精品高潮呻吟久久av黑人| 久久天堂av综合合色| 欧美激情欧美激情| 国产91ⅴ在线精品免费观看| 亚洲一级一级97网| 亚洲成av人乱码色午夜| 国产成人精品网站| 成人信息集中地欧美| 久久精视频免费在线久久完整在线看| 久久这里有精品| 国产一区二区丝袜高跟鞋图片| 欧美日韩一区二区免费视频| 久久国产精品首页| 亚洲欧美激情精品一区二区| 国产精品狠色婷| 亚洲综合精品伊人久久| 亚洲精品乱码久久久久久金桔影视| 国产一区二区日韩| 91国语精品自产拍在线观看性色| 国产精品入口夜色视频大尺度| 久久亚洲精品成人| 久久久久久久一| 国产精品白嫩美女在线观看| 国产精品v片在线观看不卡| 欧美成人国产va精品日本一级| 精品久久久久久国产91| 黑人与娇小精品av专区| 国产热re99久久6国产精品| 日日狠狠久久偷偷四色综合免费| 国产精品免费看久久久香蕉| 亚洲自拍欧美另类| 日韩av免费在线观看| 国产日韩欧美在线视频观看| 中文字幕欧美亚洲| 欧美一级片久久久久久久| 久久免费视频这里只有精品| 国产精品免费视频xxxx| 中文字幕久热精品视频在线| 国产美女精品视频| 在线看日韩欧美| 亚洲欧美日韩区| 欧美性生交大片免网| 一本一本久久a久久精品综合小说| 久久资源免费视频| 成人有码在线视频| 成人精品在线观看| 91精品国产自产在线老师啪| 91视频国产一区| 欧美精品免费看| 国产经典一区二区| 久久中文字幕在线视频| 久久久亚洲影院你懂的| 国产网站欧美日韩免费精品在线观看| 欧美裸体男粗大视频在线观看| 欧美另类高清videos| 日韩电影中文 亚洲精品乱码| 久久精品福利视频| 亚洲一区二区中文| 日本成人在线视频网址| 国内自拍欧美激情| 欧美精品videossex性护士| 亚洲美女精品成人在线视频| 精品国产一区二区在线| 国产精品视频久久久久| 日韩欧美极品在线观看| 欧美成人精品一区二区三区| 欧美美女操人视频| 日韩av在线网站| 少妇激情综合网| 久久综合网hezyo| 91久久久精品| 91精品国产91久久久| 欧美麻豆久久久久久中文| 中文字幕在线看视频国产欧美| 久久精品青青大伊人av| 久久网福利资源网站| 国产精品成人观看视频国产奇米| 久久精品国产精品| 亚洲一区精品电影| 在线视频国产日韩| 中文字幕精品国产| 日韩免费黄色av| 热草久综合在线| 福利视频导航一区| 最新69国产成人精品视频免费| 在线观看久久av| 18性欧美xxxⅹ性满足| 成人av.网址在线网站| 成人女保姆的销魂服务| 日韩av在线免费观看一区| 国产精品免费在线免费| 性欧美视频videos6一9| 国产精品久在线观看| 91在线视频精品| 91精品国产综合久久香蕉922| 久操成人在线视频| 最近2019中文字幕第三页视频|