下載吧 - 綠色安全的游戲和軟件下載中心

          軟件下載吧

          當前位置:軟件下載吧 > 數據庫 > MS_SQL > SQL基礎:SQL Server 數據庫的設計詳解

          SQL基礎:SQL Server 數據庫的設計詳解

          時間:2024-02-08 11:17作者:下載吧人氣:35

          一、數據庫設計的必要性

          在實際的軟件項目中,如果系統中需要存儲的數據量比較大,需要設計的表比較多,表與表之間的關系比較復雜,那我們就需要進行規范的數據庫設置。如果不經過數據庫的設計,我們構建的數據庫不合理、不恰當,那么數據庫的維護、運行效率會有很大的問題。這將直接影響到項目的運行性和可靠性。

          二、什么是數據庫設計

          數據庫設計實際上就是規劃和結構化數據庫中的數據對象以及這些數據對象之間的關系過程。

          三、數據庫設計的重要性

          不經過設計的數據庫或是設計糟糕的數據庫很可能導致

          1、 數據庫運行效率地下

          2、 更新、刪除、添加數據出現問題

          良好設計的數據庫

          1、 執行效率高

          2、 使應用程序更便于開發

          3、 擴展性好

          4、 維護性好

          四、數據模型

          數據模型就像是數據間聯系的一個輪廓圖,整個模型就像一個框架。

          如果按照記錄間聯系的表示方式,對數據模型進行分類,可以分為:層次模型、網狀模型、關系模型。前兩種又稱為格式化數據模型。數據模型的好壞直接影響到數據庫的性能,所以數據模型的選擇是數據庫設計的首要任務。

           實體-關系(E-R)數據模型

          E-R數據模型(Entity-Relationship data model),即實體-關系數據模型。E-R數據模型不同于傳統的關系數據模型,它不是面向實現,而是面向現實物體的。

          實體(Entity)

          數據是用來描述現實中的物體的,而描述的對象都是形形色色的,有具體的、也有抽象的;有物理上存在的、也有概念性的。凡是可以互相區別而且可以被人們認識的事、物、概念等統統抽象為實體。多個相同的類型的實體可以稱為實體集(Entity set)。因此,在E-R數據模型中,也有型與值之分;實體可以作為型來定義,每個實體可以是它的實例和值。

          屬性(Attribute)

          實體一般具體若干特征,這些特征稱為實體的屬性。而每個屬性都有自己的取值范圍,在E-R數據模型中稱為值集(value set)。在同一實體集中,每個實體的屬性及其值集都是相同的,但可能取不同的值。屬性對應數據庫表的列。

          關系(Relationship)

          實體之間會有各種關系,這些關系抽象為聯系。不但實體可以有屬性,關系也可以有屬性。

          五、數據庫設計步驟

          數據庫設計可以分為以下幾個階段

          1、 需求分析階段:分析客戶的業務需求,特別是數據方面的需求

          2、 概要設計階段:繪制數據庫的E-R圖,并確認需求文檔的正確性和完整性,E-R圖是項目的設計人員、開發人員、測試人員,以及和客戶進行溝通的重要憑據

          3、 詳細設計階段:將概要設計階段的E-R圖轉換為數據庫表,進行邏輯設計,確定各個表之間的主外鍵關系,運用數據庫的三范式進行審核,并進行技術評審。最后決定選哪種數據庫(OracleSQLServerMySQL)來建庫、建表。

          需求分析階段:數據庫系統分析

          秀氣分析階段的重點是調查、收集、分析客戶的業務數據需求以及數據的安全性、完整性需求等。

          需求分析步驟:

          1、 確認業務需求

          2、 標識關系實體

          3、 標識每個實體的具有的屬性

          4、 確認實體之間的關系

          概要設計階段:繪制E-R圖

          作為數據庫設計者,你需要和項目組內其他成員分享你的設計思路,共同研討數據庫設計的合理性、安全性、完整性,并確認是否符合客戶的業務需求。那么使用E-R圖,這種圖形化的表示方式最為直觀。

          E-R圖中的實體、屬性和關系

          SQL基礎:SQL Server 數據庫的設計詳解

          上面的簡單E-R圖可以看出用戶和收支之間的關系。在上圖中可以看出:用矩形表示實體,實體是一般名詞;橢圓表示屬性,一般也是名詞;菱形表示關系,一般是動詞。

          映射基數

          映射基數表示可以通過關系與該實體的個數。對于實體集A和B之間的二元關系,可能的映射基數有:

          1、 一對一:也就是A實體中最多只有一個B實體的關聯,而B實體的最多只有一個A實體的關聯。用E-R圖表示:

          SQL基礎:SQL Server 數據庫的設計詳解

          2、 一對多:A實體可以與B實體任意數量的進行關聯,B中的實體最多與A中的一個實體關聯。E-R圖表示:

          SQL基礎:SQL Server 數據庫的設計詳解

          3、 多對一:A實體最多與一個B實體進行關聯,而B實體可以和任意多個A實體進行關聯。E-R圖表示:

          SQL基礎:SQL Server 數據庫的設計詳解

          4、 多對多:A實體可以有多個B實體,而B實體也可以有任意多個A實體。E-R圖表示:

          SQL基礎:SQL Server 數據庫的設計詳解

          E-R圖

          E-R圖可以以圖形化的方式將數據庫的整個邏輯結構表示出來,組成部分有:

          1、 矩形表示實體集

          2、 橢圓表示屬性

          3、 菱形表示關系、

          4、 直線用來連接實體集與屬性、實體集和關系

          5、 直線箭頭表示實體集之間映射基數

          詳細設計階段:將E-R圖轉換為表

          步驟如下:

          1、 將各個實體轉換為對應的表,將各屬性轉換為對應的列

          2、 標識每張表的主鍵

          3、 將實體之間的關系轉換為表與表之間的主外鍵關系

          六、數據庫設計規范化

          數據庫設計中經常出現的問題

          1、 數據冗余大

          2、 插入數據異常

          3、 刪除異常

          4、 更新異常

          規范設計

          一個較好的關系數據庫模型,它的每個關系中的屬性一定要滿足某種內在的語義條件,即要按一定的規范設計關系模型,這就是設計的規范化。

          在數據庫設計時,有一些專門的規則,稱為數據庫的設計范式,遵循這些規則,就可以創建出良好的數據庫

          數據庫著名的三大范式理論:

          1、 第一范式(1NF)

          第一范式是滿足關系數據庫模型所要遵循的最基本的條件范式,幾關系中的每個屬性必須是不可再分的簡單項,不能是屬性組合,即屬性的取值是不可拆分的原子值。

          2、 第二范式(2NF)

          第二范式是在第一范式的基礎上,確保表中的每列都和主鍵相關。其定義是如果一個關系滿足1NF,并且除了主鍵關系外的其他列都依賴于該主鍵,則滿足第二范式。

          3、 第三范式(3NF)

          第三范式是在第二范式的基礎上進行的,第三范式的目標是確保每列都和主鍵列直接相關,而不是間接相關的。其定義是:如果一個關系滿足2NF,并且除主鍵外的其他列都不傳遞依賴于該主鍵。

          規范化和性能關系

          為了滿足三大范式,數據庫的性能可能會有一定程度的降低。所以,在實際數據庫設計中,我們既要盡量滿足三大范式,從而避免數據冗余和各種數據庫的操作異常,同時也要考慮數據的訪問性能。有時候,為了提高數據庫的訪問效率,適當的允許少量數據冗余咧存在,才是最適合的數據庫設計方案。

          總結

          本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關注的更多內容!

          標簽MSSQL,SQLServer,技術文檔,數據庫,SQLSERVER

          相關下載

          查看所有評論+

          網友評論

          網友
          您的評論需要經過審核才能顯示

          熱門閱覽

          最新排行

          公眾號

          主站蜘蛛池模板: 日本精品一区二区三区四区| 精品国产一区二区三区久| 精品女同一区二区三区在线 | 人妻无码久久一区二区三区免费| 国产主播福利精品一区二区| 蜜桃臀无码内射一区二区三区| 国产日韩精品一区二区三区在线| 婷婷国产成人精品一区二| 亚洲av无码片vr一区二区三区| 亚洲日韩国产欧美一区二区三区| 亚洲欧洲一区二区三区| 日本精品高清一区二区| 玩弄放荡人妻一区二区三区| 亚洲AV无码一区二区二三区软件| 亚洲Aⅴ无码一区二区二三区软件| 亚州国产AV一区二区三区伊在| 国产成人久久精品麻豆一区| 久久亚洲综合色一区二区三区| 99精品国产高清一区二区麻豆| 国产乱人伦精品一区二区| 精品视频一区二区三区在线观看 | 亚洲国产精品无码久久一区二区 | 无码国产精品久久一区免费 | 国产伦精品一区二区三区| 亚洲熟女乱综合一区二区| 精品一区二区三区在线成人| 亚洲中文字幕乱码一区| 爱爱帝国亚洲一区二区三区| 亚洲性日韩精品一区二区三区| 中文字幕视频一区| 国产91精品一区| 国产一区二区三区小说| 日产精品久久久一区二区| 精品人体无码一区二区三区| 国产另类TS人妖一区二区| 卡通动漫中文字幕第一区| 国产精品一区二区三区免费| 午夜视频一区二区三区| 国产免费伦精品一区二区三区| 日韩精品中文字幕无码一区| 无码人妻精品一区二区三区不卡 |