MySQL Workbench的使用方法(圖文)
MySQLWorkbench
下載地址:http://www.dbjr.com.cn/database/29494.html
MySQLWorkbench 擁有很多的功能和特性;這篇由DjoniDarmawikarta
MySQLWorkbench
你在 MySQLWorkbench 中建立的被稱之為物理數(shù)據(jù)模型。一個物理數(shù)據(jù)模型是針對一個特定 RDBMS 產(chǎn)品的數(shù)據(jù)模型;本文中的模型將具有一些MySQL的獨特規(guī)范。我們可以使用它生成(forward-engineer)數(shù)據(jù)庫對象,除了包含表和列(字段)外,也可以包含視圖。
MySQLWorkbench 擁有很多的功能和特性;這篇由 DjoniDarmawikarta寫的文章通過一個示例展現(xiàn)了其中的一些。我們將針對一個訂單系統(tǒng)建立一個物理數(shù)據(jù)模型,這里的訂單系統(tǒng)可以是銷售單也可以是訂單,并且使用
我們的示例中使用MySQL Workbench 創(chuàng)建的物理模型看上去就像下圖這樣:
創(chuàng)建訂單方案(ORDER Schema)
首先讓我們來創(chuàng)建一個保存訂單物理模型的方案。點擊 +按鈕(紅色標(biāo)注的地方)
更改新的方案默認(rèn)名稱為訂單。注意,當(dāng)你鍵入方案名時,在 Physical Schemata上的標(biāo)簽名也會隨之改變——這是一個很好的特性。
訂單方案被增加到目錄(Catalog)中(圖中紅色圈住的部分)。
重命名方案后關(guān)閉schema 窗口。
創(chuàng)建訂單表
我們現(xiàn)在創(chuàng)建訂單模型中的三個表:ORDER 表以及它的兩個子表 SALES_ORDER和PURCHASE_ORDER。首先,確信你已經(jīng)選擇了 ORDER方案的標(biāo)簽,這樣,我們創(chuàng)建的表才會包含于這個方案。
我們將要創(chuàng)建的表是作為 EER 圖表展示的(EER = Enhanced EntityRelationship)。所以,雙擊 Add Diagram 按鈕。
單擊 Table圖標(biāo),然后移動鼠標(biāo)到 EER Diagram區(qū)域,在你想放置第一個表的位置上單擊鼠標(biāo)。
對于其他兩個表,重復(fù)上面的操作。你可以通過拖拽來移動表的位置。
下一步,我們要對table1 做一些操作,這些操作是通過 Workbench 的表編輯器完成的。要打開表編輯器,只需右鍵選擇 table1 并選擇Edit Table 菜單。
鍵入table1 的表名 ORDER 。
接下來,增加列(字段)。選擇 Columns 標(biāo)簽。將列名(字段名) idORDER 更改為
在下拉列表框中選擇數(shù)據(jù)類型 INT 。
我們希望ORDER_NO 列的值可以被 MySQL 數(shù)據(jù)庫自動控制,所以,我們選定 AI 列 (AutoIncrement——自增量).
AI 是MySQL 數(shù)據(jù)庫的一個特性。
你也可以指定表的其他物理屬性,例如它的 Collation屬性;當(dāng)然可以指定表的其他高級選項,例如 trigger 和 portioning (分別對應(yīng) Trigger 和Partioning 標(biāo)簽)。
注意,這時,在diagram 中我們表 table1 已經(jīng)改變?yōu)镺RDER,并且,它有一個列(字段)ORDER_NO。在目錄中,你也可以看到有三個表。
在表右側(cè)的黑點,表示它們包含在一個圖表中。
如果你展開ORDER ,你可以看到 ORDER_NO 列。因為我們定義它為主鍵,所以在它左側(cè)有一個 key圖標(biāo)。
回到表設(shè)計器,增加其他兩列(字段):ORDER_DATE 和ORDER_TYPE。ORDER_TYPE 可以有兩個值:S 表示銷售訂單,P表示采購訂單。由于銷售訂單是更常用的,所以我們指定列(字段)的默認(rèn)值為 S 。
你可以在最后一列的下面白色區(qū)域雙擊鼠標(biāo)來增加下一個字段。
使用同樣的方式來創(chuàng)建 SALES_ORDER表及其中的列(字段)。
最后,創(chuàng)建PURCHASE_ORDER 表及其中的列(字段)。
創(chuàng)建關(guān)系
我們已經(jīng)創(chuàng)建了三個表。到這里并沒有結(jié)束;我們?nèi)耘f需要創(chuàng)建它們的關(guān)系。
SALES_ORDER 是 ORDER 的子表,意味著它們是 1:1 ,SALES_ORDER為子表, ORDER 為父表,并將 ORDER 的鍵移動到 SALES_ORDER 。所以,選擇(單擊)1:1 identifyingrelationship 圖標(biāo),然后在 SALES_ORDER 表上單擊,再在 ORDER表上單擊。
注意,當(dāng)你在單擊表時,圖標(biāo)將變?yōu)閹в?1:1關(guān)系的手型。
1:1關(guān)系就是這樣設(shè)置的;ORDER_NO 主鍵被移動到 SALES_ORDER表并作為它的主鍵。
下一步,創(chuàng)建PURCHASE_ORDER 到 ORDER 的關(guān)系,它仍舊是 1:1 關(guān)系。
我們現(xiàn)在已經(jīng)完成了表及表之間關(guān)系的設(shè)計;將我們的模型保存為ORDER.mwb.
生成 DDL和數(shù)據(jù)庫
最終在本文設(shè)計數(shù)據(jù)模型的目的是為了建立 MySQL 數(shù)據(jù)庫。我們將首先生成 DDL(SQLCREATE script),然后執(zhí)行這個腳本。
從
最后,執(zhí)行保存的SQL CREATE 腳本。MySQL Workbench 自身并沒有執(zhí)行這個腳本的能力;我們可以在 MySQL命令控制臺中來執(zhí)行它。
你也可以在其中來查看表是否已經(jīng)被創(chuàng)建。
總結(jié)
這篇文章向你展示了在 MySQL Workbench 中如何可視的建立 MySQL物理數(shù)據(jù)模型,并使用它來創(chuàng)建一個 MySQL 數(shù)據(jù)庫。
相關(guān)文章
Navicat for MySQL 15注冊激活詳細(xì)教程
這篇文章主要介紹了Navicat for MySQL 15注冊激活詳細(xì)教程,本文通過圖文并茂的形式給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-12-12Mysql基礎(chǔ)入門 輕松學(xué)習(xí)Mysql命令
這篇文章主要是Mysql基礎(chǔ)入門教程,教大家如何輕松學(xué)習(xí)Mysql命令,并熟練掌握Mysql命令,感興趣的小伙伴們可以參考一下2015-11-11CentOS 6、7下mysql 5.7 詳細(xì)安裝教程
這篇文章主要為大家介紹了CentOS 6、7下mysql 5.7 詳細(xì)安裝教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-08-08MYSQL IN 與 EXISTS 的優(yōu)化示例介紹
當(dāng)B表的數(shù)據(jù)集必須小于A表的數(shù)據(jù)集時,用in優(yōu)于exists,當(dāng)A表的數(shù)據(jù)集系小于B表的數(shù)據(jù)集時,用exists優(yōu)于in2014-08-08對MySQL慢查詢?nèi)罩具M(jìn)行分析的基本教程
這篇文章主要介紹了對MySQL慢查詢?nèi)罩具M(jìn)行分析的基本教程,文中提到的Query-Digest-UI這個基于B/S的圖形化查看工具非常好用,需要的朋友可以參考下2015-12-12Linux 安裝JDK Tomcat MySQL的教程(使用Mac遠(yuǎn)程訪問)
這篇文章主要介紹了Linux 安裝JDK Tomcat MySQL(使用Mac遠(yuǎn)程訪問),本文圖文并茂給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2018-06-06mysql 5.7以上版本安裝配置方法圖文教程(mysql 5.7.12\mysql 5.7.13\mysql 5.7.
這篇文章主要為大家分享了MySQL 5.7以上縮版本安裝配置方法圖文教程,包括mysql5.7.12、mysql5.7.13、mysql5.7.14安裝教程,包括感興趣的朋友可以參考一下2016-08-08