MySQL
文章平均质量分 51
MySQL
燥栋
这个作者很懒,什么都没留下…
展开
-
MySQL-外键-2021/09/18
外键foreign key如果一个实体的某个字段指向另一个实体的主键,就称为外键。被指向的实体,称之为主实体(主表),也叫父实体(父表)。负责指向的实体,称之为从实体(从表),也叫子实体(子表)对关系字段进行约束,当为从表中的关系字段填写值时,会到关联的主表中查询此值是否存在,如果存在则填写成功,如果不存在则填写失败并报错语法查看外键show create table 表名新建两个表,一个学生表,一个班级表,不加外键create table class(id int unsign原创 2021-09-18 14:34:48 · 101 阅读 · 0 评论 -
MySQL-事务、索引-2021/09/17
1.事务为什么要有事务????事务广泛的运用于订单系统、银行系统等多种场景例如:A用户和B用户是银行的储户,现在A要给B转账500元,那么需要做以下几件事:检查A的账户余额>500元;A 账户中扣除500元;B 账户中增加500元;正常的流程走下来,A账户扣了500,B账户加了500,皆大欢喜。那如果A账户扣了钱之后,系统出故障了呢?A白白损失了500,而B也没有收到本该属于他的500。以上的案例中,隐藏着一个前提条件:A扣钱和B加钱,要么同时成功,要么同时失败。事务的需求就在于此原创 2021-09-17 23:43:50 · 122 阅读 · 1 评论 -
MySQL-ER模型-2021/09/17
E-R模型E-R模型的基本元素是:实体、联系和属性E表示entry,实体:一个数据对象,描述具有相同特征的事物R表示relationship,联系:表示一个或多个实体之间的关联关系,关系的类型包括包括一对一、一对多、多对多属性:实体的某一特性称为属性关系也是一种数据,需要通过一个字段存储在表中1、实体A对实体B为1对1,则在表A或表B中创建一个字段,存储另一个表的主键值一般不经常使用的那个表的字段来维护两个表之间的关系。如下学生扩展信息,不经常使用,那么在其表中添加一个字段用于维护两个表之间的原创 2021-09-17 22:46:23 · 217 阅读 · 0 评论 -
MySQL-子查询中特定关键字使用-2021/09/17
子查询中特定关键字使用1. in 范围格式: 主查询 where 条件 in (列子查询)查询18-20岁的学生。select *from studentswhere age in (select age from students where age between 18 and 20);2. any | some 任意一个格式: 主查询 where 列 = any (列子查询)在条件查询的结果中匹配任意一个即可,等价于 in格式: 主查询 where 列 < 、>原创 2021-09-17 21:41:48 · 412 阅读 · 0 评论 -
MySQL-列子查询、行子查询、表级子查询-2021/09/17
列子查询标量子查询,只能返回一行一列,王昭君的学号,数据库的课程编号,需要返回的时一行一列的值,可以用标量子查询来满足,但是要同时查询王昭君和大乔两个人的成绩就不能用等值查询。例3:查询18岁的学生的成绩,要求显示成绩学生表中查询18岁的学生的学号select studentNo from students where age=18成绩表中根据学号查询成绩select * from scores where studentNo in ('002','006');子查询语句返回值一列多行原创 2021-09-17 21:24:01 · 1645 阅读 · 0 评论 -
MySQL-标量子查询-2021/09/16
1. 子查询和主查询基本知识1.1 子查询在一个 select 语句中,嵌入了另外一个 select 语句, 那么被嵌入的 select 语句称之为子查询语句1.2 主查询主要查询的对象,第一条 select 语句1.3 主查询和子查询的关系子查询是嵌入到主查询中子查询是辅助主查询的,要么充当条件,要么充当数据源子查询是可以独立存在的语句,是一条完整的 select 语句查询班级学生平均年龄select avg(age) from students-- 查询班级学生平均年原创 2021-09-16 23:40:04 · 104 阅读 · 0 评论 -
MySQL-自关联介绍-2021/09/16
过了10天才继续看MySQL希望看完别半途而废自关联介绍只要有上下级关系的都存在一个表中,有两个字段,一个是编号,一个是上级编号。这样就可以满足要求。构造数据create table areas(aid int primary key,atitle varchar(20),pid int);-- 添加省市数据insert into areasvalues ('130000', '河北省', NULL),('130100', '石家庄市', '130000'),('130400'原创 2021-09-16 21:19:51 · 297 阅读 · 0 评论 -
MySQL-3个表连接、左连接、右连接-2021/09/06
3个表连接查询学生信息及学生的课程对应的成绩方法1:等值查询select* from students,courses,scores where students.studentNo=scores.studentno and scores.courseNo=courses.courseNo方法2:内查询select* from studentsinner join scores on students.studentNo=scores.studentnoinner joi原创 2021-09-06 21:16:07 · 4728 阅读 · 0 评论 -
MySQL-等值连接、内连接、练习题-2021/09/06
连接查询1. 等值连接方式一select * from 表1,表2 where 表1.列=表2.列select * from 表1,表2这一句话出现笛卡尔积的现象。一个表的数目和另一个表的数据相乘。通过where进行筛选。例1:查询学生信息及学生的成绩select * from students stu, scores sc where stu.studentno=sc.studentno出现问题,后个字段多了一个1,因为两个学号字段相同2. 内连接方式二(又称内连接)s原创 2021-09-06 20:23:06 · 2764 阅读 · 0 评论 -
MySQL-排序、聚合、分组筛选、分页-2021/09/06
排序select * from 表名order by 列1 asc|desc,列2 asc|desc,…在这里插入代码片例1:查询所有学生信息,按年龄从小到大排序select * from students order by age例2:查询所有学生信息,按年龄从大到小排序,年龄相同时,再按学号从小到大排序select * from students order by age desc,studentNo例3:中文名字排序按字母select * from stud原创 2021-09-06 17:21:03 · 153 阅读 · 0 评论 -
MySQL-指令总结---持续更新
1. 创建表CREATE TABLE students(id int unsigned primary key auto_increment,name varchar(10),age int unsigned,height decimal(5,2))2. 删除表#如果表存在则删除,如果不存在报错drop table students#如果表存在则删除,如果不存在则不删除,不报错drop table if exists students3.数据-增删改查3.1 数据-增原创 2021-09-05 21:54:38 · 194 阅读 · 0 评论 -
MySQL-条件查询、逻辑查询、模糊查询、范围查询、空判断-2021/09/05
条件查询select 字段1,字段2… from 表名 where 条件;select * from students where id=1;例1:查询小乔的年龄select age from students where name='小乔'例2:查询20岁以下的学生select * from students where age<20例3:查询家乡不在北京的学生select * from students where hometown!='北京'逻辑运算符例1原创 2021-09-05 21:53:26 · 170 阅读 · 0 评论 -
MySQL-简单查询-2021/09/05
准备数据查看所有表的信息select * from 表名select * from students查看表中某一列的信息查询指定字段在select后面的列名部分例:select 列1,列2,… from 表名select name,sex from students给列改别名可以使用as为列起别名,也可以直接在列名之后写但是他在实际数据库中名字并没有改变,不会影响表的数据select name as 姓名, sex 性别 from students原创 2021-09-05 21:13:21 · 199 阅读 · 0 评论 -
MySQL-逻辑删除-2021/09/05
逻辑删除逻辑删除:增加isdelete字段。例如会员注销功能,可在一个月之内可以选择恢复会员功能,所以不肯能直接在数据库中直接delete这一行记录,所以设置一个字段isdelete,利用update操作初始所有会员为0,注销之后为1。再利用查询语句,根据条件显示符合条件的记录。这样就不会显示注销会员的人了若想在进行恢复,则使用update在对其字段进行更改操作。总结:逻辑删除,并不是真的在数据库对其记录进行删除,而是进行条件筛选初始化所有的人都是会员update students s原创 2021-09-05 19:28:13 · 1502 阅读 · 0 评论 -
MySQL-数据操作增删改查-2021/09/05
1. 简单查询2. 添加数据添加一行数据values里面的值必须与表里的字段和个数一一对应主键的三种占位方法,0,null,default不方便,有些信息必须填写,有些不用写,可以指定列明然后插入3. 修改此时id起到了唯一性更改多个字段4. 删除...原创 2021-09-05 11:11:52 · 63 阅读 · 0 评论 -
MySQL-基本语法-创建删除-2021/09/05
热键创建表通过sql语句进行表的生成,如下无符号 unsigned主键 primary key自动递增 auto_increment不能为空 not null通过设计表可以看出效果正确删除若表存在则删除,托不存在则报错这里同理,在create table 也可以进行判断。分号进行两条语句区分若不加分号,先删除,在建立,报错,认为是一条语句加了分号则认为是两条语句。...原创 2021-09-04 21:01:03 · 67 阅读 · 0 评论 -
MySQL-数据类型、主键约束、非空、默认值-2021/09/04
SQL最重要的是查询。结构化查询语言c1. 常用数据类型知道数据类型在测试工作中的作用,如果我们知道数据类型,那么我们就知道了这个数值的边界。就可以知道如何进行测试。长度:分为有符号和无符号个数范围字符串:长度字符串个数 字符串可包含 数字,但是数字里面不能包含字符串1.1 数据类型1.2 约束主键:int类型,必须填值,不能重复,自动递增,唯一标识。若为非空可以自动设置默认值其中外键和唯一要到语句中才能做...原创 2021-09-04 20:08:56 · 469 阅读 · 0 评论 -
MySQL-Win10系统 MySQL & Navicat Premium12 安装教程-2021/09/04
注:本文以Win 10系统 + 64位为例1 MySQL的下载与安装1.1 进入MySQL官网官网链接:https://dev.mysql.com/downloads/mysql/1.2 MySQL安装及环境变量配置1.从官网下载完毕后,并解压zip安装包,安装包结构如图所示:2.配置环境变量:3.配置初始化的my.ini文件发现解压后的目录并没有 my.ini 文件,没关系可以自行创建。在安装包的根目录下添加 my.ini(新建文本文件,将文件类型改为 .ini ),写入基本配置转载 2021-09-04 18:45:09 · 1056 阅读 · 1 评论