• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    軟件測試開發技術之正確的數據庫設計確保數據的完整性[1]

    發布: 2009-9-10 10:24 | 作者: 不詳 | 來源: 領測軟件測試網 | 查看: 25次 | 進入軟件測試論壇討論

    領測軟件測試網

    圖A 在Books和Publisher表之間啟用引用完整性

      在兩個表之間啟用了引用完整性之后,數據輸入將受到更多的限制:

      不可在Books.PublisherFK中輸入新的外鍵值,除非首先在Publishers.Publisher中將新值作為主鍵值輸入。

      如果Books.PublisherFK中存在一個匹配的值(外鍵),那么不能在Publishers.Publisher中更改一個值(主鍵)。

      Books.PublisherFK中存在一個匹配的值(外鍵),那么不能從Publishers.Publisher中刪除一個值(主鍵)。

      輸入、刪除和更改數據時,如果違反了引用完整性,會發生什么呢?下面以Microsoft Access為例來實際體驗一下。首先打開Books表,然后輸入Nee Nee's Truck的記錄,如圖B所示。保存記錄時會產生一個錯誤,因為RabbitPress在Publishers表中不是一個主鍵值。必須先在Publishers表中為RabbitPress輸入一條記錄,否則引用完整性不認為RabbitPress是一個外鍵值。

      

      圖B 系統拒絕RabbitPress成為一個外鍵

      接著試驗一下修改主鍵值。請打開Publishers表,選擇Apress記錄(或者Que及Sybex),然后試著刪除記錄。這樣也會出錯,如圖C所示。系統不允許你刪除記錄,因為Books表包含匹配的外鍵值。但可以刪除O'Reilly的記錄,因為Books表中沒有任何記錄將O'Reilly作為外鍵使用。

      

      圖C 不能刪除Apress記錄

      如果將Apress修改成RabbitPress,會再次出現上述錯誤。記住,只要在相關的表中存在匹配的外鍵值,那么主鍵也是不能修改的。相反,O'Reilly就能修改成RabbitPress。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/

    22/2<12

    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>