学mysql直接用workbench_三分钟教你学会MySQL Workbench的使用

MySQL Workbench是MySQL的可视化数据库工具,本文介绍了如何使用它创建物理数据模型,包括添加表、设置列和关系,并通过正向工程生成数据库。教程以一个订单系统为例,展示了创建ORDER、SALES_ORDER和PURCHASE_ORDER表的过程,以及1:1关系的设定,最后导出SQL脚本并在MySQL环境中执行。
摘要由CSDN通过智能技术生成

MySQLWorkbench是什么呢?事实上MySQLWorkbench是一种用于mysql的可视化数据库专用工具,那么如何使用MySQLWorkbench?今天给大家讲解如何正确使用MySQLWorkbench。

MySQLWorkbench是MySQL最近释放的可视数据库设计工具。这个工具是设计Mysql数据库的专用工具。

MySQLWorkbench拥有很多的功能和特性;这篇由DjoniDarmawikarta写的文章通过一个示例展现了其中的一些。我们将针对一个订单系统建立一个物理数据模型,这里的订单系统可以是销售单也可以是订单,并且使用forward-engineer(正向引擎)将我们的模型生成为一个MySQL数据库。

85a9a04bfd6602f50b9438561406d315.png

你在MySQLWorkbench中建立的被称之为物理数据模型。一个物理数据模型是针对一个特定RDBMS产品的数据模型;本文中的模型将具有一些MySQL的独特规范。我们可以使用它生成(forward-engineer)数据库对象,除了包含表和列(字段)外,也可以包含视图。

我们的示例中使用MySQLWorkbench创建的物理模型看上去就像下图这样:

85a9a04bfd6602f50b9438561406d315.png

创建订单方案(ORDERSchema)

首先让我们来创建一个保存订单物理模型的方案。点击+按钮(红色标注的地方)

376e00f2979568e7e25bafc0fbf53936.png

更改新的方案默认名称为订单。注意,当你键入方案名时,在PhysicalSchemata上的标签名也会随之改变——这是一个很好的特性。

订单方案被增加到目录(Catalog)中(图中红色圈住的部分)。

09b692ce047054951a186b7f8f0db780.png

重命名方案后关闭schema窗口。

f8260e48dbba3990345760389435a320.png

创建订单表

我们现在创建订单模型中的三个表:ORDER表以及它的两个子表SALES_ORDER和PURCHASE_ORDER。首先,确信你已经选择了ORDER方案的标签,这样,我们创建的表才会包含于这个方案。

4847abe2fba75d192e72675f9e2d32a4.png

我们将要创建的表是作为EER图表展示的(EER=EnhancedEntityRelationship)。所以,双击AddDiagram按钮。

单击Table图标,然后移动鼠标到EERDiagram区域,在你想放置第一个表的位置上单击鼠标。

b0ebd10fd9a6301d6d308720b295e6c8.png

6bdf89e76a8803d4d86b84d0c9c85f3f.png

对于其他两个表,重复上面的操作。你可以通过拖拽来移动表的位置。

9dbf8c15019b5af1be2e1a05ca5655a7.png

下一步,我们要对table1做一些操作,这些操作是通过Workbench的表编辑器完成的。要打开表编辑器,只需右键选择table1并选择EditTable菜单。

c60727a0a20fcc5abf162957338ef403.png

键入table1的表名ORDER。

0456ad8863e2bf80ea91b50a1c6e98d1.png

接下来,增加列(字段)。选择Columns标签。将列名(字段名)idORDER更改为ORDER_NO.

f3062091ad5312bc8c3a334e94dd9a4e.png

在下拉列表框中选择数据类型INT。

b6cb5499188c1d7f793f19c05b148575.png

我们希望ORDER_NO列的值可以被MySQL数据库自动控制,所以,我们选定AI列(AutoIncrement——自增量).

AI是MySQL数据库的一个特性。

a7f24a3eba56bdde1f2632e238f9ed12.png

你也可以指定表的其他物理属性,例如它的Collation属性;当然可以指定表的其他高级选项,例如trigger和portioning(分别对应Trigger和Partioning标签)。

2d3b88aad3a85b4cb85149a0d1704fb6.png

注意,这时,在diagram中我们表table1已经改变为ORDER,并且,它有一个列(字段)ORDER_NO。在目录中,你也可以看到有三个表。

在表右侧的黑点,表示它们包含在一个图表中。

如果你展开ORDER,你可以看到ORDER_NO列。因为我们定义它为主键,所以在它左侧有一个key图标。

f2caea3b4dfe9d9b12363db402b1aebd.png

回到表设计器,增加其他两列(字段):ORDER_DATE和ORDER_TYPE。ORDER_TYPE可以有两个值:S表示销售订单,P表示采购订单。由于销售订单是更常用的,所以我们指定列(字段)的默认值为S。

你可以在最后一列的下面白色区域双击鼠标来增加下一个字段。

6afa979b4792f69dc8d7f1e8294c4e0a.png

使用同样的方式来创建SALES_ORDER表及其中的列(字段)。

61b7312e660c46df3c13948cb3e751aa.png

最后,创建PURCHASE_ORDER表及其中的列(字段)。

65f2fc3e3d5c87da6e3e3ffdd18a97b4.png

创建关系

我们已经创建了三个表。到这里并没有结束;我们仍旧需要创建它们的关系。

SALES_ORDER是ORDER的子表,意味着它们是1:1,SALES_ORDER为子表,ORDER为父表,并将ORDER的键移动到SALES_ORDER。所以,选择(单击)1:1identifyingrelationship图标,然后在SALES_ORDER表上单击,再在ORDER表上单击。

281b60e0172fede7ee4af02fe5b47386.png

注意,当你在单击表时,图标将变为带有1:1关系的手型。

ac55ce0ade362a9622f072ddb15a6eec.png

ac55ce0ade362a9622f072ddb15a6eec.png

1:1关系就是这样设置的;ORDER_NO主键被移动到SALES_ORDER表并作为它的主键。

78dbf06f075fa8378b7df0f58ca83608.png

下一步,创建PURCHASE_ORDER到ORDER的关系,它仍旧是1:1关系。

8df99231a8e3c89201c9dc6bab0598d3.png

我们现在已经完成了表及表之间关系的设计;将我们的模型保存为ORDER.mwb.

28f5b81038c854a8e5f2e2e1e59e7949.png

f80952b7d56d75a58df3a27632f6d889.png

生成DDL和数据库

最终在本文设计数据模型的目的是为了建立MySQL数据库。我们将首先生成DDL(SQLCREATEscript),然后执行这个脚本。

从File|Export菜单中,选择ForwardEngineerSQLCREATEScript.

c790cfa249d57efed7d183fc68bccc73.png

da9af35e93feca8427aaa144e90b205c.png

564bed146af0953f9db7f7d8986061c3.png

最后,执行保存的SQLCREATE脚本。MySQLWorkbench自身并没有执行这个脚本的能力;我们可以在MySQL命令控制台中来执行它。

d2feb2eb22d77106ad6fdb86186fb439.png

b3d16e189411561a292a84d7ed32f164.png

你也可以在其中来查看表是否已经被创建。

987825933811a3e750024ac4e22dc05e.png

总结

这篇文章向你展示了在MySQLWorkbench中如何可视的建立MySQL物理数据模型,并使用它来创建一个MySQL数据库。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值