From 0240f46f8d89746f7fb0fb16a665b495543b650b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=90=91=E6=9E=97?= <11785161+zhao-xianglin@user.noreply.gitee.com> Date: Wed, 25 Oct 2023 14:20:12 +0000 Subject: [PATCH] =?UTF-8?q?=E8=B5=B5=E5=90=91=E6=9E=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 赵向林 <11785161+zhao-xianglin@user.noreply.gitee.com> --- .../20231024 \346\227\245\345\277\227.sql" | 76 +++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 "51 \350\265\265\345\220\221\346\236\227/20231024 \346\227\245\345\277\227.sql" diff --git "a/51 \350\265\265\345\220\221\346\236\227/20231024 \346\227\245\345\277\227.sql" "b/51 \350\265\265\345\220\221\346\236\227/20231024 \346\227\245\345\277\227.sql" new file mode 100644 index 0000000..3f5f68a --- /dev/null +++ "b/51 \350\265\265\345\220\221\346\236\227/20231024 \346\227\245\345\277\227.sql" @@ -0,0 +1,76 @@ + + +```sql +数据 + +表之间关系:表里面行与行之间的关系。 +1.一对一:一个学生(学号,编号,身份证号),只有一个身份证. 将其中任一放一 +2.一对多: 一放多. +3.多对多: 第三表.前两表主键来当夕 +设计步骤 visio +明确数据对象 +构建ER图. 概念模型. +梳理关系 逻辑模型 +E-R三要素:实体.属性,关系 +1、一对一如何作表连接:任意一个表主键放到另一个表当外键. +2.一对方:将:“所在的表的主键放到“多”所在的表当外键. +3,多对多:建立第三个表,将两个主表的主键放到第三个表当外键 + + +数据库设计三大范式. +1.第一范式:每个属性,也就是字段要求不可再分割、也就要求有原子性. +2.第二范式:在满足第一范式的基础上,要求非主键字段完全依赖主键. (有联合主键时,非主键要同时完全依赖两个主键而不能部分依赖) +3.第三范式:在满足第二范式的基础上,要求非主键字段要直接依赖于主键. +ER图 +1、isio 画流程图软件 +2、实体关系图. +3、三要素:1、实体:画矩形.里面写实体的名称 加下划线 +2、属性:椭圆或圆形,里面写属性名称,用线条与实体直连,如果是主 +3、关系:用线条将两个实体相连,中间可以用菱形来表示之间联系,菱形可以当实付,也可有自己属性. + +1、系统变量:@aglobal.变量名,指系统己经定义好的变量. +2、用户变量:可以由用户自定义的变量. +3、会活变量:用@变量名,作用域:同一个会活中随处可用. +4.局部变量:直接用不带@的标记符表示.a1、a、b、x,但其只能在存储过程中的beginend计使用局前,先定义,语句只能写在begin开始,定义之前不能有其它语句, +-declare.变量名,变量数据类型,[default 默认值] +不管什么变量,赋值有两种.支持一次性给多个变量赋值,用,号隔开 +-set变量多二值. +_set@=10,@b=20; +-select@a,a,b, +select. x into y 这种方式.通常用于将表的查询结果,赋值给某个变量. + +定义一个无参数的存储过程. +存储过程.procedure +1.可以将复杂的逻辑封装到一起. +蛋 dielimiter 11 +临时将mysql语句的结束标志,也就是定界符,由;改成11.结束后改为; +create procedure 存储过程名. +Begin 语法. +存储过程. +end. +de limited; +call 调用 调用存储过程Call存储过程的名称( )如果( )无参数. +可以把(  )省略 +1、修改定界符 +2.create procedure 存储过程名称( )就算无参数也要有( ). +3. BEGIN +4.真正要执行的sql语句集合.(集合指Sql语句.可以是n种n条.可是查、插,修.删. +5、 end $丰 +6、将定界符还原为; delimiter; + +check 检查约束 作用:检查某个字段的值是否符合要求一般指值的 +①gender char check(‘男’or’女’): 写法 +② gender char(1), check (gender in(男,‘女”)); +视图是虚拟表,本身不存储数据. +视图提供的数据为Secect语句. +视图会根据数据变化而变化,反之亦然 +创建视图, +create view +在视图自定义字段名不加引号. 查询语句的引号.可加可不加 +Show tables 因为普通表和视图都会一起显示,难分彼此. +所以可以在名称上动手脚.比如普通表就是t_视图用1 +视图优点:①操作简单. ②减少数据冗余.② 数据安全. ④.灵活多变. +不足 :结构变更,维护较复杂.可读性不好, + +``` + -- Gitee