Sign in with Microsoft
Sign in or create an account.
Hello,
Select a different account.
You have multiple accounts
Choose the account you want to sign in with.
在 Visio 中建立資料庫模型 (亦稱為「實體關聯」圖表)

在 Visio 中,透過資料庫模型圖範本,您可以建立新模型,或將現有資料庫以反向工程還原為模型。

資料庫圖示、箭號和表示資料庫的 Visio 圖表

本文將說明如何建立資料庫模型,以及在建立模型之後可以執行哪些動作。

附註: 資料庫模型圖僅適用於某些版本的 Visio。 如需詳細資訊,請參閱找不到資料庫模型功能?

1:啟動資料庫模型圖

如果您沒有想要用來做為起始點的現有資料庫,您可以從使用空白資料庫模型開始,然後新增您自己的資料表和關聯。

  1. 選取 [檔案] > [新增]。

  2. 在搜尋方塊中,輸入資料庫模型,然後按 Enter。

  3. 在搜尋結果中,按兩下 [資料庫模型圖]。

    資料庫模型圖範本。
  4. 選取 [公制單位] 或 [英制],然後選取 [建立]。

    反向工程精靈通常會自動開啟。

  5. 選取 [取消] 以關閉精靈。

  6. 在 [資料庫] 索引標籤的 [管理] 群組中,選取 [顯示選項]。

  7. 在 [資料庫文件選項] 對話方塊中,選取您要使用的符號組以及其他資料表和關聯選項,然後選取 [確定]。 按一下對話方塊中的 [說明] 按鈕以取得各種選項的詳細資訊。

如果您有想要建構模型的資料庫,以便更容易理解或使用它作為新模型的起點,可以使用反向工程精靈來擷取資料庫的架構或結構,然後建立新模型。

啟動精靈之前:

  • 如果您要以反向工程還原某個 Excel 活頁簿,請先開啟活頁簿,然後為包含欄標題的儲存格群組 (或範圍) 命名。 如果您要使用多個工作表,只要命名每個工作表中的欄儲存格的群組就可以了。 這些範圍在反向工程​​精靈中會視為資料表。 如需儲存格範圍命名方式的詳細資訊,請參閱定義及使用公式中的名稱

  • 為了獲得最佳結果,請先將預設驅動程式設定到您要進行反向工程的目標資料庫,然後再執行反向工程精靈。 此步驟可確保精靈正確對應原生資料類型,且精靈擷取的所有程式碼都能在 [程式碼] 視窗中正確顯示。

啟動精靈:

  1. 選取 [檔案] > [新增]。

  2. 在搜尋方塊中,輸入資料庫模型,然後按 Enter。

  3. 在搜尋結果中,按兩下 [資料庫模型圖]。 選取 [建立]。

    反向工程精靈應該會自動開啟。

    如果精靈未開啟:在工具列功能區的 [資料庫] 索引標籤上,在 [模型] 群組中,選取 [反向工程]。

  4. 在反向工程精靈的第一個畫面上,執行下列動作:

    1. 選取您資料庫管理系統 (DBMS) 的資料庫驅動程式。 如果您尚未將 Visio 資料庫驅動程式與特定 ODBC 資料來源建立關聯,請按一下 [設定]。

      附註: 如果您以反向工程還原某個 Excel 工作表,請選擇 [ODBC 標準驅動程式]。

    2. 選取您正在更新資料庫的資料來源。 如果您尚未建立現有資料庫的資料來源,請按一下 [新增] 以立即執行此動作。

      當您建立新來源時,會將其名稱新增到 [資料來源] 清單中。

    3. 如果您對設定感到滿意,請按一下 [下一步]。

  5. 依照任何驅動程式特定對話方塊中的指示進行。

    例如,在 [連接資料來源] 對話方塊中,輸入使用者名稱和密碼,然後按一下 [確定]。

    附註: 如果您使用 ODBC 標準驅動程式,您可能會收到指出反向工程資訊可能不完整的錯誤訊息。 在大部分情況下,這不是問題,只要按一下 [確定],然後繼續進行精靈就可以了。

  6. 選取您要擷取的資訊類型核取方塊,然後按一下 [下一步]。

    附註: 某些項目可能無法使用 (以灰色顯示),因為並非所有資料庫管理系統都支援精靈擷取的所有元素類型。

  7. 選取您要擷取的資料表 (和檢視,如果有的話) 的核取方塊,或按一下 [全部選取] 以將它們全部擷取,然後按一下 [下一步]。

    附註: 如果您以反向工程還原某個 Excel 工作表,而且在清單中看不到任何內容,您可能必須在工作表中為包含欄標題的儲存格範圍命名。 如需詳細資訊,請參閱定義及使用公式中的名稱

  8. 如果您已選取 [預存程序] 核取方塊,請選取您要擷取的程序,或按一下 [全部選取] 以將它們全部擷取,然後按一下 [下一步]。

  9. 選取您是否要讓反向工程項目自動新增到目前的頁面。

    附註: 除了在 [資料表] 和 [檢視] 視窗中列出反向工程項目以外,您還可以選擇讓精靈自動建立繪圖。 如果您決定不自動建立繪圖,您可以從 [資料表] 和 [檢視] 視窗中將項目拖曳到繪圖頁面,來手動組合資料庫模型。

  10. 檢閱您的選取項目,驗證您擷取的是您所要的資訊,然後按一下 [完成]。

    精靈會擷取選取的資訊,並在 [輸出] 視窗中顯示有關擷取程序的附註。

如果您有現有的 VisioModeler 或 PLATINUM ERwin 模型,您可能可以匯入它以建立 Visio 資料庫模型圖。 此功能僅限於 VisioModeler 2.0 或較新的字典模型 (.imd) 檔案以及 PLATINUM ERwin 2.6、3.0 和 3.52 .erx 檔案。

  1. 選取 [檔案] > [新增]。

  2. 在搜尋方塊中,輸入資料庫模型,然後按 Enter。

  3. 在搜尋結果中,按兩下 [資料庫模型圖]。 選取 [建立]。

    反向工程精靈會自動開啟。 選取 [取消] 以關閉精靈。

  4. 在 [資料庫] 索引標籤的 [模型] 群組中,選取 [匯入],然後選取模型類型。

  5. 輸入您要匯入的模型路徑和模型檔案名稱,或選取 [瀏覽] 按鈕來找到模型檔案,然後選取 [開啟]。

  6. 在 [匯入] 對話方塊中,選取 [確定]。

    Visio 隨即匯入檔案,並在 [輸出] 視窗中顯示其進度。 [資料表] 和 [檢視] 視窗中會顯示匯入的資料表。

  7. 在 [資料表] 和 [檢視] 視窗中,選取您要建構模型的資料表,然後將它們拖曳到繪圖頁面上。

2:精簡圖表結構

建立資料庫模型圖之後,就可以開始進行精簡圖表的工作。 您可以新增並自訂模型的三個主要元件:

  • 實體 (或資料表)、

  • (描述資料表事實),以及

  • ​​關聯​ (資料表之間的關聯)。 關聯可以是一對一、一對多或多對多。

選取下方的標題以開啟如何將功能新增至模型的相關指示。

資料庫模型圖範本隨附兩個樣板。 當您開始精簡圖表結構時,請從適合您的樣板開始進行:

  • 使用 [實體關聯] 樣板來建構以 SQL92 和較舊標準為基礎的資料庫模型。

  • 使用 [物件關聯] 樣板 (具有可搭配類型使用的其他圖形) 來建構以 SQL99 和較新標準為基礎的資料庫模型。

使用 [實體] 圖形以在圖表中建立資料表:

  1. 從 [實體關聯] 或 [物件關聯] 樣板中,將 [實體] 圖形拖曳到繪圖上。

  2. 按兩下圖形以開啟 [資料庫屬性] 視窗。

  3. 在 [類別] 底下,按一下 [定義],然後輸入資料表的名稱。

  4. 在 [類別] 底下,按一下 [欄],輸入名稱,然後選擇資料類型。

  5. 針對無法有 Null 值的欄,請選取 [Req'd] 核取方塊。

  6. 針對可唯一識別資料庫資料表中每一列的欄,請選取 [PK] (主索引鍵) 核取方塊。

  7. 在 [類別] 底下,按一下 [索引]、[觸發程序]、[檢查] 或 [擴充] 來建立這些選用元素。

使用 [資料庫屬性] 視窗來新增或變更欄的屬性,包括資料類型和主索引鍵:

  1. 按兩下圖表中的資料表。

  2. 在 [資料庫屬性] 視窗的 [類別] 底下,按一下 [欄]。

  3. 按一下第一個空白 [實體名稱] 儲存格,然後輸入名稱。

  4. 若要變更欄的資料類型,請按一下欄的 [資料類型] 欄位,然後從清單中選取資料類型,或將資料類型輸入到清單中。 例如,您可以輸入 decimal(8,2)char(30)

  5. 若要避免 Null 值,請選取 [Req'd] 核取方塊。

  6. 若要指定欄為主索引鍵,請選取 [PK] 核取方塊。

  7. 若要查看在按一下 [欄] 類別時所顯示欄屬性以外的其他欄屬性,請選取欄,然後按一下 [編輯]。

關聯使用主索引鍵和外部索引鍵,讓資料庫能夠使一個資料表中的某一列符合關聯資料表中的某一列。 您可以在圖表中顯示這些關聯。 此外,您可以設定其基數 (例如,一對多),並使用 Crow's feet、關聯或 IDEF1X 標記法來顯示基數。 您無法在資料庫模型圖範本中使用任何上述標記法來顯示多對多關聯。

建立資料表之間的關聯:

  1. 確認兩個資料表在圖表中皆可顯示。 如果您以反向工程從現有的資料庫還原模型,您可能需要從 [資料表] 和 [檢視] 視窗將一個或兩個資料表拖曳到繪圖頁面上。

  2. 按兩下您想要用於關聯的主索引鍵端的資料表。

  3. 在 [資料庫屬性] 視窗的 [類別] 底下,按一下 [欄]。

  4. 在格線中,按一下您要用來唯一識別資料表中每一列的欄,然後選取 [PK] 核取方塊以將它設為主索引鍵。

  5. 從 [物件關聯] 或 [實體關聯] 樣板,拖曳 [關聯] 圖形,然後將它拖放到頁面上的空白處。

  6. 將較高的一端連接到具有父資料表的資料表。

  7. 將另一端連接到子資料表。

    如果第二個資料表沒有包含與主索引鍵名稱相同的欄,模組工具會將它新增到第二個資料表以做為外部索引鍵。

    附註: 如果關聯線消失,請在 [資料庫] 索引標籤的 [管理] 群組中,按一下 [顯示選項]。 在 [關聯] 索引標籤的 [顯示] 底下,選取 [關聯] 核取方塊。

設定關聯的基數:

  1. 按兩下關聯。

  2. 在 [資料庫屬性] 視窗的 [類別] 底下,按一下 [其他]。

  3. 在 [基數] 底下,選擇最符合關聯的基數。 針對一對多關聯,最佳選擇為 [零或更多] 或 [一或更多]。 針對一對一關聯,最佳選擇為 [零或一個] 或 [只有一個]。

3:新增搜尋和更新資料的功能

若要對圖表進行其他修飾 (例如建立索引、檢查子句和觸發程序),請選取下方標題以開啟如何新增執行下列任何動作的相關指示:

索引可改善執行查詢時的資料庫效能或速度。

  1. 開啟資料庫模型圖。

  2. 按兩下您要新增索引的資料表,然後在 [資料庫屬性] 視窗的 [類別] 清單中,按一下 [索引]。

  3. 按一下 [新增]。

  4. 在 [建立索引] 對話方塊中,輸入索引的名稱,然後按一下 [確定]。

  5. 在 [索引類型] 清單中,選取建立唯一或非唯一索引的選項。

  6. 在 [可用資料欄] 清單中,選取您要在此索引中包含的每一欄的名稱,然後按一下 [新增 >]。

  7. 在 [索引欄] 清單中,選取 [遞增] 核取方塊來建立以遞增順序排序的索引,或清除核取方塊來建立以遞減順序排序的索引。

    資料庫模型圖隨即更新。

您可將檢視視為已儲存的查詢。 當您需要從多個資料表中重複存取相同的資訊,或想要向使用者公開資料 (而不用讓他們變更實際資料表) 時,檢視會格外實用。

從 [實體關聯] 或 [物件關聯] 樣板中,將 [檢視] 圖形拖曳到繪圖頁面上。

視您的資料庫管理系統 (DBMS) 而定,您可能可以設定資料表或檢視的擴充屬性,來判定它們的儲存位置。

按兩下您要設定擴充屬性的資料表或檢視,然後在 [資料庫屬性] 視窗的 [類別] 清單中,按一下 [擴充]。

使用檢查子句,確保欄中輸入的資料在特定值範圍內。 例如,您可以建立一個要求 [年齡] 欄中,資料超過 65 的檢查子句。

  1. 按兩下資料表以開啟 [資料庫屬性] 視窗。

  2. 在 [類別] 底下,按一下 [欄],然後按一下您要新增檢查子句的欄。

  3. 按一下 [編輯]。

  4. 在 [欄屬性] 對話方塊的 [檢查] 索引標籤上,輸入您想要的限制。 如需有關您的選擇的詳細資訊,請參閱 [欄] 和 [欄位屬性] 對話方塊 ([檢查] 索引標籤) (英文)。

    檢查子句隨即新增到 [程式碼] 視窗的 [本機程式碼] 底下。

使用預存程序和使用者定義函數,建立可重複使用的程式碼封包,以重複執行相同的動作。 這兩者之間的主要差異在於使用者定義函數會傳回值,預存程序則會執行程式碼,而不傳回值。

  1. 在 [資料庫] 索引標籤的 [顯示/隱藏] 群組中,選取 [程式碼] 核取方塊以開啟 [程式碼] 視窗。

  2. 按一下 [全域程式碼],然後按一下 [新增]。

  3. 在 [程式碼編輯器] 的 [屬性] 索引標籤上,按一下您要建立的程式碼類型,然後輸入程式碼的名稱。

  4. 在 [主體] 索引標籤上,輸入程式碼,然後按一下 [確定]。

觸發程序會導致觸發程序中指定的 SQL 程式碼在資料庫中發生特定事件時執行。

  1. 按兩下資料表以開啟 [資料庫屬性] 視窗。

  2. 在 [類別] 底下,按一下 [觸發程序],然後按一下 [新增]。

  3. 在 [屬性] 索引標籤上,輸入觸發程序的名稱。

  4. 在 [主體] 索引標籤上,輸入程式碼,然後按一下 [確定]。

    觸發程序隨即新增到 [程式碼] 視窗的 [本機程式碼] 底下。

找不到資料庫模型功能?

某些版本的 Visio 缺少部分或所有資料庫模型功能:

  • Visio 標準版不包含資料庫模型圖範本。

  • Visio 專業版和進階版支援資料庫模型圖範本的反向工程功能 (也就是使用現有資料庫在 Visio 中建立模型),但不支援正向工程 (也就是使用 Visio 資料庫模型來產生 SQL 程式碼)。

  • 適用於企業架構的 Visio 中具有資料庫模型功能的完整套件,包括反向工程和正向工程。 適用於企業架構的 Visio 隨附於 MSDN 進階版訂閱,可在 Visual Studio Professional 和 Visual Studio Team System 角色型版本中使用。

若要查看您擁有的 Visio 版本,請按一下 [說明] 功能表上的 [關於 Microsoft Office Visio]。 對話方塊中的最上面一行文字會顯示版本名稱。

如果您是使用 Visio 方案 2,並想要了解如何對現有資料庫進行資料庫模型工程,請參閱將現有的資料庫反向工程到資料庫模型中。 Visio 支援 SQL Server 2016 和較舊版本的反向工程。 Visio 支援 SQL Server 2019 或更新版本的反向工程。

另請參閱

在資料庫模型圖中定義關聯

在資料庫模型圖中建立或編輯檢視

新增資料表及資料欄至資料庫模型圖

在資料庫模型圖中設定及編輯資料類型

在資料庫模型圖中顯示 Crow's Foot 表示法 (機器翻譯)

在資料庫模型圖中建立或編輯索引 (機器翻譯)

在資料庫模型圖中保留參照完整性 (機器翻譯)

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

Was this information helpful?

How satisfied are you with the translation quality?
What affected your experience?
By pressing submit, your feedback will be used to improve Microsoft products and services. Your IT admin will be able to collect this data. Privacy Statement.

Thank you for your feedback!

×