From dfbb39fab8848c012d5991dca19a0ac1980e9baf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E8=B5=B7=E7=91=9E?= <3148024859@qq.com> Date: Thu, 7 Sep 2023 13:04:44 +0800 Subject: [PATCH] =?UTF-8?q?=E7=AC=AC=E4=BA=8C=E6=AC=A1=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...54\344\270\200\350\212\202\350\257\276.md" | 32 ++++ ...50\212\202\350\257\276 E-R\345\233\276.md" | 140 ++++++++++++++++++ 2 files changed, 172 insertions(+) create mode 100644 "50 \345\274\240\350\265\267\347\221\236/20230905 \346\225\260\346\215\256\345\272\223\351\253\230\347\272\247\347\254\254\344\270\200\350\212\202\350\257\276.md" create mode 100644 "50 \345\274\240\350\265\267\347\221\236/20230906 \346\225\260\346\215\256\345\272\223\351\253\230\347\272\247\347\254\254\344\272\214\350\212\202\350\257\276 E-R\345\233\276.md" diff --git "a/50 \345\274\240\350\265\267\347\221\236/20230905 \346\225\260\346\215\256\345\272\223\351\253\230\347\272\247\347\254\254\344\270\200\350\212\202\350\257\276.md" "b/50 \345\274\240\350\265\267\347\221\236/20230905 \346\225\260\346\215\256\345\272\223\351\253\230\347\272\247\347\254\254\344\270\200\350\212\202\350\257\276.md" new file mode 100644 index 0000000..f094031 --- /dev/null +++ "b/50 \345\274\240\350\265\267\347\221\236/20230905 \346\225\260\346\215\256\345\272\223\351\253\230\347\272\247\347\254\254\344\270\200\350\212\202\350\257\276.md" @@ -0,0 +1,32 @@ +## 数据库高级 + +##### 开学第一课: + +我们要了解一下本学期的学习任务 + +实际应用(实操)学习mysql高级 MVC框架等 + +### 大二下 + +Node.js(前端) + +vue.js(前端) + +spring Boot (redis,webApi) + + + + 1.Linux服务器 Nginx,mogoDB + +2. 项目中可能实现的技术:中间件 ,签权 ,鉴别权限 +3. 小程序 uniapp移动端开发 + +### 感想: + +1.我们应该多关注招聘网站以及招聘职位的岗位要求,为我们的学习目标 可以更好的适应今后的工作 + +2.在学习的课余时间自己学习一些拓展的知识 + +3.树立目标持之以恒 + +4.学会做笔记,认真巩固复习当天的知识 diff --git "a/50 \345\274\240\350\265\267\347\221\236/20230906 \346\225\260\346\215\256\345\272\223\351\253\230\347\272\247\347\254\254\344\272\214\350\212\202\350\257\276 E-R\345\233\276.md" "b/50 \345\274\240\350\265\267\347\221\236/20230906 \346\225\260\346\215\256\345\272\223\351\253\230\347\272\247\347\254\254\344\272\214\350\212\202\350\257\276 E-R\345\233\276.md" new file mode 100644 index 0000000..c8eb792 --- /dev/null +++ "b/50 \345\274\240\350\265\267\347\221\236/20230906 \346\225\260\346\215\256\345\272\223\351\253\230\347\272\247\347\254\254\344\272\214\350\212\202\350\257\276 E-R\345\233\276.md" @@ -0,0 +1,140 @@ +### 数据库高级 + +**一.数据库设计分为六个阶段** + +1. 需求分析 +2. 概念结构设计 +3. 逻辑结构设计 +4. 物理结构设计 +5. 数据库实施 +6. 数据库维护 + +需求分析和概念结构设计独立于任何数据库管理系统,逻辑结构设计和物理结构设计与选用的数据库管理系统密切相关。 + +#### 二.E-R模型 + +描述概念模型的工具:E-R模型 + +**三.实体之间的联系** + +(1)两个实体型之间的联系 + +1. 一对一 + 将其中任一表主键,放到另一表当外键 + 如果对于实体集 A 中的每一个实体,实体集 B 中至多有一个(也可以没有)实体与之联系,反之亦然,则称实体集 A 与实体集 B 具有一对一联系,记为 1:1。 + 如:学校里一个班级只有一个正班长,而一个班长只在一个班中任职,则班级与班长之间具有一对一联系。 +2. 一对多的关系(多对一的关系) + 将一所在表的主键,放到多的表当外键 + 如果对于实体集 A 中的每一个实体,实体集 B 中有 n 个实体( n⩾0 )与之联系,反之,对于实体集 B 中的每一个实体,实体集 A 中至多只有一个实体与之联系,则称实体集 A 与实体集 B 有一对多联系,记为 1:n。 + 如: 一个班级中有若干名学生,而每个学生只在一个班级中学习,则班级与学生之间具有一对多联系。 +3. 多对多的关系 + 必须有第三张表,作中转表,将前面两个表主键放进来当外键 + 如果对于实体集 A 中的每一个实体,实体集 B 中有 n 个实体(n⩾0 )与之联系,反之,对于实体集 B 中的每一个实体,实体集 A 中也有 m 个实体(m⩾0 )与之联系,则称实体集 A 与实体集 B 具有多对多联系,记为 m:n。 + 如:一门课程同时有若干个学生选修,而一个学生可以同时选修多门课程,则课程与学生之间具有多对多联系。 + +(2)两个及以上实体之间的关系 + +一般的来说,两个以上的实体之间也存在着一对一、一对多、多对多的联系 + +##### E-R图 + +​ E-R图 有三大要素:**实体、属性、关系** + +(1). 实体型:用矩形表示,矩形框内写明实体名 也可以通俗点理解MySQL当中的表 + +(2). 属性:用椭圆形表示,并用无向变将其与相应的实体型连接起来 可以理解成MySQL表当中的字段 + +(3). 联系用菱形表示,菱形框内写明联系名,用无向边分别与有关实体型连接起来,同时在无向边旁标上联系的类型(1:1、1:n 或 m:n)。 类似于外键约束 + +~~~MySQL +CREATE DATABASE school CHARSET utf8; +use school; +-- 院系表 +CREATE TABLE faculty( + d_id INT PRIMARY KEY, + d_name VARCHAR(255) +); +INSERT INTO faculty VALUES + (1,'软件工程学院'); +-- 专业表 +CREATE TABLE specialty( + S_id int PRIMARY KEY, + S_name VARCHAR(255), + d_id int, + FOREIGN KEY (d_id) REFERENCES faculty(d_id) +); +INSERT INTO specialty VALUES + (1,'软件技术',1); +-- 班级表 +CREATE TABLE class( + C_id INT PRIMARY KEY, + C_name VARCHAR(20), + grade VARCHAR(5), + s_id INT, + FOREIGN KEY (s_id) REFERENCES specialty(s_id) +); +INSERT INTO class VALUES + (1,'软件技术1班','22级',1), + (2,'软件技术2班','22级',1), + (3,'软件技术7班','22级',1), + (4,'软件技术9班','22级',1); +-- 课程 +CREATE TABLE course( + couseId int PRIMARY key, + courseName varchar(10), + c_id int, + r_id int, + foreign key (c_id) references class(C_id), + foreign key (r_id) references classroom(r_id) +); +insert into course VALUES + (1,'Java',1,1), + (2,'MySQL',2,2); +-- 教室 +create table classroom( + r_id int PRIMARY KEY, + r_name varchar(10) +); + insert into classroom values +(1,'实训二'), +(2,'实训八'); +-- 课程表 +create table `select` ( + selectId int primary key, + couseId int, + time varchar(20), + t_id int, + r_id int, + foreign key (couseId) references course(couseId), + foreign key (t_id) references teacher(t_id), + foreign key (r_id) references classroom(r_id) +); +insert into `select` values +(1,1,'周一8:00-11:40',2,1), +(2,2,'周一14:00-17:40',1,2); +-- 教师 +create table teacher( + t_id int primary key, + t_name varchar(10), + couseId int, + foreign key (couseId) references course(couseId) +); +insert into teacher values +(1,'张三',1), +(2,'李四',2); +-- 学生 +CREATE TABLE student ( + stu_name VARCHAR(25), + stu_id INT PRIMARY KEY, + C_id INT, + select_id INT, + foreign key (C_id) references class(C_id), + FOREIGN KEY (select_id) REFERENCES `select`(selectId) +); +INSERT INTO student VALUES + ('王五',17,1,1), + ('陈六',50,2,2), + ('张琦',66,3,1), + ('李八',31,4,1); +~~~ + -- Gitee