- SQL Server 2016數據庫應用與開發
- 姜桂洪主編
- 1722字
- 2019-07-01 10:15:15
4.4 數據庫關系圖
數據庫關系圖(Database Diagram)是數據庫中對象的圖形表示形式。在數據庫設計過程中,可以利用數據庫關系圖對數據庫對象如表、列、鍵、索引、關系和約束等做進一步設計和修改。數據庫關系圖包括表對象、表所包含的列以及它們之間的相互關聯的情況。
可以通過創建關系圖或打開現有的關系圖來打開數據庫關系圖設計器。
1.創建數據庫關系圖
創建數據庫關系圖的步驟如下。
(1)在“對象資源管理器”中,右擊“數據庫關系圖”文件夾或該文件夾中的任何關系圖,從彈出的快捷菜單中選擇“新建數據庫關系圖”命令,如圖4-20所示。
(2)此時,將顯示“添加表”對話框。在“表”列表中選擇所需的表,再單擊“添加”按鈕,如圖4-21所示。選擇的表將以圖形方式顯示在新的數據庫關系圖中。

圖4-20 創建數據庫關系圖

圖4-21 “添加表”對話框
(3)繼續添加或刪除表,按照設計的方案修改表或更改表關系,如添加student、score和calss等6個表,創建數據庫關系圖,如圖4-22所示。
(4)在“文件”菜單中,選擇“保存關系圖”命令,在彈出的對話框中輸入關系圖名稱Diagram_teac1,單擊“確定”按鈕,即可建成數據庫關系圖
通過保存數據庫關系圖可以保存對數據庫所做的所有更改,包括對表、列和其他數據庫對象所做的任何更改。
對于任何數據庫,可以創建任意數目的數據庫關系圖;每個數據庫表都可以出現在任意數目的關系圖中,這樣便可以創建不同的關系圖,使數據庫的不同部分可視化或強調設計的不同方面。例如,可以創建一個大型關系圖來顯示所有表和列,并創建一個較小的關系圖來顯示所有表但不顯示列。

圖4-22 完成數據庫關系圖
2.在數據庫關系圖中修改數據庫對象
在數據庫關系圖上,表中所顯示的列名與列存儲在數據庫的名稱一樣,可以在數據庫關系圖中直接重命名列。其具體操作步驟如下。
(1)展開數據庫關系圖,選擇要重命名列的表,再右擊要重命名的列。
(2)從彈出的快捷菜單的子菜單中選擇“表視圖”→“標準”“列名”或“鍵”命令,如圖4-23所示。
(3)在顯示要重命名列的單元格中輸入新的“列名”。
(4)使用“對象資源管理器”還可以創建新的數據庫關系圖。數據庫關系圖以圖形方式顯示數據庫的結構。使用數據庫關系圖可以創建和修改表、列、關系和鍵。此外,還可以修改索引和約束。
3.數據庫關系圖中的要素
(1)在數據庫關系圖中,每個表都可帶有3種不同的功能,即標題欄、行選擇器和一組屬性列,參看圖4-23。
①標題欄。標題欄顯示表的名稱。如果修改了某個表,但尚未保存該表,則表名末尾將顯示一個星號(?),表示未保存更改。
②行選擇器。可以通過單擊行選擇器來選擇表中的數據庫列。如何該列是表的主鍵,則行選擇器將顯示一個鍵符號。
③屬性列。屬性列組僅在表的某些視圖中可見。

圖4-23 修改數據庫對象
(2)在數據庫關系圖中,每個關系都可以帶有3種不同的功能,即終結點、線型和相關表,參看圖4-23。
①終節點。線的終節點表示關系是一對一還是一對多關系。如果某個關系在一個終節點處有鍵,在另一個終節點處有無窮符號,則該關系是一對多關系。如果某個關系在每個終節點處都有鍵,則該關系是一對一關系。
②線型。線本身表示當向外鍵表添加新數據時,DBMS是否強制關系的引用完整性。如果為實線,則在外鍵表中添加或修改行時,DBMS將強制關系的引用完整性。如果為點線,則在外鍵表中添加或修改行時DBMS不強制關系的引用完整性。
③相關表。關系線表示兩個表之間存在外鍵關系。對于一對多關系,外鍵表是靠近線的無窮符號的那個表。如果線的兩個終節點連接到同一個表,則該關系是自反關系,可以打開數據庫關系圖以查看或編輯關系圖的結構。
4.查看數據庫關系圖
查看數據庫關系圖的步驟如下。
(1)在“對象資源管理器”中,右擊相應數據庫的“數據庫關系圖”子目錄下的已經建成的數據庫關系圖。
(2)在彈出的快捷菜單中選擇“修改”命令,即可查看和修改選擇的關系圖。
(3)或者在“對象資源管理器”中展開“數據庫關系圖”文件夾,雙擊要打開的數據庫關系圖的名稱。
由此可見,數據庫關系圖還是一種可視化工具,可用于對所連接的數據庫進行設計和可視化處理。在數據庫關系圖中可以創建、編輯或刪除表、列、鍵、索引、關系和約束。一個數據庫可以通過創建一個或多個關系圖,以顯示數據庫中的部分或全部表、列、鍵和關系,以實現數據庫對象的可視化操作。
- 大學計算機基礎(第三版)
- C語言程序設計教程
- 基于免疫進化的算法及應用研究
- Spring Boot企業級項目開發實戰
- Integrating Facebook iOS SDK with Your Application
- Windows Phone 7.5:Building Location-aware Applications
- 常用工具軟件立體化教程(微課版)
- C++寶典
- Spring Security Essentials
- OpenCV with Python By Example
- 網絡數據采集技術:Java網絡爬蟲實戰
- Java并發編程:核心方法與框架
- scikit-learn Cookbook(Second Edition)
- C語言程序設計
- C語言從入門到精通