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

article/2025/5/14 17:59:39

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>

http://chatgpt.dhexx.cn/article/IauXDwph.shtml

相关文章

ER/Studio生成数据库设计文档

ER/Studio生成数据库设计文档 用ER/Studio生成数据库设计文档之前&#xff0c;至少应该完成数据库的逻辑模型&#xff08;Logical Model&#xff09;&#xff0c;如果有需要&#xff0c;再进一步可以生成物理模型&#xff08;Physical Model&#xff09;。之后&#xff0c;就可…

5分钟入门ER/Studio

文章目录 前言一、创建逻辑模型二、生成SQL脚本三、常用其他操作1、Domains的使用2、生成数据库设计文档3、使用宏把Attribute name复制到Definition 总结 前言 以前一直使用PowerDesigner做数据库模型设计&#xff0c;由于工作需要&#xff0c;要求使用易博龙ER/Studio做数据…

嘀咕电影微信小程序

最近开发了一个电影类微信小程序&#xff0c;一起来看看把&#xff01; 一、小程序分为首页&#xff0c;影院&#xff0c;我的三大模块 二、点击首页的影院热映和即将上映的电影列表&#xff0c;可以跳转到对应的电影详情页 三、点击电影详情页的领券购票&#xff0c;可以选择…

在附近小程序中展示你的小程序-微信小程序开发-视频教程21

在上一节课程中&#xff0c; 我们虽然申请开通附近小程序&#xff0c; 也得到了微信的审核通过&#xff0c; 但我们的小程序还不会主动展示到附近小程序列表中&#xff0c; 需要我们到后台进行相应的设置。 公众号跟小程序后台设置类似&#xff0c; 这里我们以公众号后台设置为…

微信小程序获取地理位置最佳实现

定位 微信小程序获取用户当前位置需要用户的授权&#xff0c;可以直接调用 wx.getLocation&#xff0c;微信会弹出授权提示&#xff0c;如果用户曾经拒绝过授权则不会弹窗。 根据微信官方文档&#xff1a; 授权 部分接口需要经过用户授权同意才能调用。我们把这些接口按使用范…

微信小程序逆向分析

文章目录 微信小程序逆向分析行为监控分析文件特征wxapkg解密思路重新监控解密分析尾部部分解密解密例程分析找到xorKey 首部1024字节解密解密例程分析AES_Key生成例程分析分组模式以及iv 微信小程序逆向分析 WeChatAppEx.exe 版本&#xff1a;2.0.6609.4 以融智云考学生端为…

小程序发展简史

2017年元月9日微信正式推出第一个版本的小程序以来&#xff0c;大众对小程序经历了“热情->失望->质疑->回归->井喷爆发”的几个阶段。无疑小程序是个划时代的应用。它免安装&#xff0c;轻巧、免卸载、多入口的特性&#xff0c;从一诞生并自带光环。目前大分部主流…

微信小程序复习题

文章目录 填空题选择题判断题分析题&#xff08;20&#xff09;分析代码显示效果 页面设计题&#xff08;40&#xff09; 填空题 微信小程序创始人是 张小龙 &#xff0c;英文缩写 Mini Program小程序是一种无需下载和无需安装即可使用的应用&#xff0c;它实现了应用“ 触手可…

小程序获取附近IBeacon设备

实现逻辑&#xff1a; 该功能实现需要使用以下API&#xff1a; wx.startBeaconDiscovery(OBJECT)&#xff1a;开始搜索附近的iBeacon设备 wx.stopBeaconDiscovery(OBJECT)&#xff1a;停止搜索附近的iBeacon设备 wx.onBeaconUpdate(CALLBACK)&#xff1a;监听 iBeacon 设备…

微信小程序面试题大全

1、简述微信小程序的相关文件类型&#xff1f; WXML 搭建页面的结构WXSS 页面样式文件js 逻辑处理&#xff0c;网络请求json 配置当前页面标题和引入组件等app.js 可以在里边监听生命周期函数、声明全局变量app.json 小程序的全局配置&#xff08;页面路径、网络超时时间、底部…

微信小程序常见问题汇总

1、如何避免微信小程序中 app.js中 onshow事件的n次触发的问题? 问题 在开发中&#xff0c;遇到了一个小难题&#xff0c;就是app.js中 onshow事件总是会因调用其它API而触发&#xff0c;例如:wx.chooseImage&#xff0c;wx.makephonecall、wx. previewImage等。 解决办法 目…

怪兽充电小程序

第一首先看中心点上有个小图标 实现方式&#xff0c;我们可以使用map 结合一个图片覆盖物实现&#xff0c;在结合定位 <map id"myMap" show-locationenable-poienable-building :latitude"latitude":longitude"longitude":markers"marke…

扫盲篇 | 你真的懂附近的小程序吗?

“附近的小程序”功能是指用户进入微信小程序界面以后,可以直接看到所在地周围5公里左右的所有“小程序”。 包括实体店,服务店,商场等,微信小程序上线之初就曾提及该功能,而它几乎成了零售领域最期待的一项功能。 所以许多行业人士指出,小程序会给零售行业发展带来巨大…

有哪些常见的微信小程序推广引流方法?

如何对小程序进行推广引流。只有如此&#xff0c;才能为小程序获取到更多忠实用户&#xff0c;使小程序实现更大的价值。今天就为大家介绍一下微信小程序常见有效的推广方式。 1、附近的小程序&#xff08;免费&#xff09; 在小程序后台&#xff0c;开通“附近的小程序”&am…

微信附近的人小程序怎么开(开通附近小程序的方法)

1、进入微信公众号平台进入&#xff0c;输入小程序账号和密码&#xff0c;点击登录&#xff1b; 2、在左侧菜单中找到“附近的小程序”&#xff0c;点击开通。&#xff08;个体小程序不支持开通&#xff09; 3、验证管理员身份后按照要求填写资料&#xff0c;点击定位&#xf…

C语言/C++初学 问题

编程及C/C初学者 FAQ 本文原为本人在论坛所发若干帖&#xff0c;意在集中解决新手学习C/C语言时将遭遇到的各类问题&#xff0c;网友反馈情况良好&#xff0c;集合修订后作为个人作品贴于此处。 本贴主要分析概念原理和解决方案&#xff0c;不讨论具体程序语法&#xff0c;立足…

matlab2c使用c++实现matlab函数系列教程-randint函数

全栈工程师开发手册 &#xff08;作者&#xff1a;栾鹏&#xff09; matlab2c动态链接库下载 matlab库函数大全 matlab2c基础教程 matlab2c开发全解教程 matlab2c调用方法&#xff1a; 1、下载动态链接库 2、将Matlab2c.dll拷贝到exe同目录下 3、将Matlab2c.h、Matlab2c.lib放…

MATLAB只randint函数

srandint(M,N,range); 生成MxN的矩阵&#xff0c;矩阵中元素的取值为小于range的整数。 M4; N3; range3; srandint(M,N,range) 注意&#xff1a; randi函数生成元素取值为1&#xff1a;M的N*range的矩阵。

python中randint_python中randint函数的用法是什么?_后端开发

php的数据库怎么安装?_后端开发 安装步骤:1、在官网上下载数据库软件,然后双击下载好的数据库软件,打开后点击右下角的“下一步”,选择第一个选项“我接受”;2、默认勾选所有插件;3、选择安装数据库位置,点击“安装”;4、点击“完成”,这时php数据库就安装成功了。 …

Random.Randint 函数--Numpy

Numpy.Random.Randint 函数功能&#xff1a; Return random integers from low (inclusive) to high (exclusive)。 Return random integers from the “discrete uniform” distribution of the specified dtype in the “half-open” interval [low, high). If high is None…