DataBseDesign工作笔记003---ERStudio使用笔记_基本使用方法详解

JAVA技术交流QQ群:170933152  

场景

这里我采用一个“最经典”的学生选课场景来使用ERStuidio

场景分析

学生与课程是多对多的关系,而在数据库设计中大部分都是将多对多转化成一对多,即需要”第三方”表(选课表)来连接这个关系 
学生表一对多选课表 
课程表一对多选课表

ERStudio解决方案

1、打开ERstudio创建三张表

这里写图片描述

表关系详解 
经常用第二种一对多关系

1、Identifying Relationship。

翻译:标识关联。

描述:一对多的关联,主表的主键既是子表的外键也是子表的主键。 
这里写图片描述

 

2、Non-Identifying, Mandatory Relationship。

翻译:非标识强制关联。

描述:一对多的关联,主表的主键是子表的外键,且非空。 
这里写图片描述

 

3、Non-Identifying, Optional Relationship。

翻译:非标识可选关联。

描述:一对多的关联,主表的主键是子表的外键,但可以为空。 
这里写图片描述

 

4、One-to-One Relationship。

翻译:一对一关联。

描述:一对一的关联,主表的主键是子表的外键,且可以为空。 
这里写图片描述


5、Non-Specific Relationship。

翻译:非特定关联。

描述:多对多的关联,主表与子表没有确定的关联关系。 
这里写图片描述

2、修改表名、添加属性字段(双击表)

这里写图片描述

uml创建完成

s:学生编号主键 
c:课程编号主键 
sc:学生编号外键、课程编号外键

这里写图片描述

3、选择生成物理模型

这里写图片描述

需要设置的内容(其他的就下一步就好)

这里写图片描述

物理模型

这里写图片描述

4、生成数据库

这里写图片描述

相关设置

这里写图片描述

下一步,直到看到相关界面,即可查看生成表的sql语句

这里写图片描述

<span style="color:#000000"><code>--
-- ER/Studio 8.0 SQL Code Generation
-- Company :      Microsoft
-- Project :      DATA MODEL
-- Author :       linjie
--
-- Date Created : Saturday, May 12, 2018 09:29:06
-- Target DBMS : MySQL 5.x
--

-- 
-- TABLE: course 
--

CREATE TABLE course(
    cid      INT                     AUTO_INCREMENT,
    cname    NATIONAL VARCHAR(20)    NOT NULL,
    PRIMARY KEY (cid)
)ENGINE=MYISAM
;



-- 
-- TABLE: cs 
--

CREATE TABLE cs(
    sid      INT    NOT NULL,
    grade    INT,
    cid      INT    NOT NULL
)ENGINE=MYISAM
;



-- 
-- TABLE: students 
--

CREATE TABLE students(
    sid      INT                     AUTO_INCREMENT,
    sname    NATIONAL VARCHAR(20)    NOT NULL,
    PRIMARY KEY (sid)
)ENGINE=MYISAM
;



-- 
-- TABLE: cs 
--

ALTER TABLE cs ADD CONSTRAINT Refstudents4 
    FOREIGN KEY (sid)
    REFERENCES students(sid)
;

ALTER TABLE cs ADD CONSTRAINT Refcourse5 
    FOREIGN KEY (cid)
    REFERENCES course(cid)
;</code></span>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

添柴程序猿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值