随笔分类 - MySQL数据库
摘要:什么是数据库设计范式? 数据库表的设计依据。教你怎么进行数据库表的设计 数据库设计范式共有3个 第一范式:最核心,最重要的范式,所有表的设计都需要满足,要求任何一张表必须有主键,每一个字段原子性不可再分 第二范式:建立在第一范式的基础上,要求所有非主键字段完全依赖主键,不要产生部分依赖 第三范式:建
阅读全文
摘要:重点掌握:数据的导入和导出(数据的备份) 其他命令了解一下即可。(这个培训日志文档留着(网盘里),以后忘了,可以打开文档复制粘贴。) 数据导出? 注意:在windows的dos命令窗口中: mysqldump bjpowernode>D:\bjpowernode.sql -uroot -p12345
阅读全文
摘要:什么是视图 view:站在不同的角度去看待同一份数据 怎么创建视图对象?怎么删除视图对象? 表复制: create table dept2 as select * from dept; 创建视图对象: create view dept2_view as select * from dept2; 删除
阅读全文
摘要:什么是索引?(index) 索引在数据库表的字段上添加的,是为了提高查询效率存在的一种机制 一张表的一个字段可以添加一个索引 ,当然,多个字段联合起来也可以添加索引 索引相当于一本书的目录,是为了缩小扫描范围而存在的一种机制 对于一本字典来说,查找某个汉字有两种方式: 第一种方式:一页一页挨着找,直
阅读全文
摘要:什么是事务 一个事务其实就是一个完整的业务逻辑 什么是一个完整的业务逻辑? 假设转账,从A账户向B账户中转账10000 将A账户的钱减去10000(update语句) 将B账户的钱加上10000(update语句) 这就是一个完整的业务逻辑 以上的操作是一个最小的工作单元,要么同时成功,要么同时失败
阅读全文
摘要:存储引擎(了解内容) 什么是存储引擎,有什么用 存储引擎是MySQL中特有的一个术语 实际上存储引擎是一个表存储/组织数据的方式 不同的存储引擎,表存储数据的方式不同 怎么给表添加/指定“存储引擎”呢? show create table t_student; 可以在建表的时候给表指定存储引擎 在建
阅读全文
摘要:约束 什么是约束? 约束:constraint 在创建表的时候,我们可以给表中的字段加上一些约束,来保证这个表中数据的 完整性、有效性!! 约束包括哪些 非空约束:not null 唯一性约束:unique 主键约束:primary key(简称PK) 外键约束:foreign key(简称FK)
阅读全文
摘要:create table emp2 as select * from emp; 原理:将一个查询结果当做一张表新建!!! 这个可以完成表的快速复制 查询结果也可以创建一张表: create table mytable as select empno,ename from emp where job
阅读全文
摘要:建表的语法格式:(建表属于DDL语句,DDL包括:create,drop,alter) create table 表名(字段名1 数据类型,字段名2 数据类型,字段名3 数据类型 ... ) 表名:建议以t_或者tbl_开始,可读性强 字段名:见名知意 表名和字段名都属于标识符 关于mysql中的数
阅读全文
摘要:limit(非常重要) limit的作用是将查询结果集的一部分取出来,通常使用在分页查询当中 百度默认:一页显示10条记录 分页的作用是为了提高用户的体验,因为一次全部都查出来,用户体验差 可以一页一页翻页看 limit怎么用? 完整用法:limit,startIndex,length startI
阅读全文
摘要:案例:查询工作岗位是MANAGER和SALESMAN的员工 select ename,job from emp where job = 'MANAGER' or job = 'SALESMAN'; select ename,job from emp where job in ('MANAGER','
阅读全文
摘要:什么是子查询 select语句中嵌套select语句,被嵌套的select语句称为子查询 子查询都可以出现在哪里? select ..(select). from ..(select). where ..(select). where子句中的子查询 案例:找出比最低工资高的员工姓名和工资? 实现思路
阅读全文
摘要:把查询结果去除重复记录 注意:原表数据不会被修改,只是查询结果去重 去重需要使用一个关键字:distinct //只能出现在所有字段的最前方 什么是连接查询 从一张表中单独查询,称为单表查询 emp表和dept表联合起来查询数据,从emp表中取员工名字,从dept表中取部门名字 这种跨表查询,多张表
阅读全文
摘要:多行处理函数 多行处理函数的特点:输入多行,最终输出一行 count 计数 sum 求和 avg 平均值 max 最大值 min 最小值 注意: 分组函数在使用的时候必须先进行分组,然后才能用 如果你没有对数据进行分组,整张表默认为一组 找出最高工资: select max(sal) from em
阅读全文
摘要:数据处理函数(单行处理函数) 单行处理函数的特点:一个输入对应一个输出 和单行处理函数相对的是:多行处理函数。(多行处理函数特点:多个输入,对应一个输出!) 单行处理函数常见的有哪些: lower 转换小写 select lower(ename) from emp; upper 转换大写 selec
阅读全文
摘要:查询所有员工薪资,排序 order by (默认升序);order by ... desc(指定降序);order by ... asc(指定升序); 可以两个字段排序吗?或者说按照多个字段排序? 查询员工名字和薪资,要求按照薪资升序,如果薪资一样的话,再按照名字升序排列 select ename,
阅读全文
摘要:什么是条件查询 不是将表中所有数据都查出来。是查询出来符合条件的 语法格式:select 字段1,字段2,字段3... from 表名 where 条件; 都有哪些条件: = 等于 查询薪资等于800的员工姓名和编号? select empno,ename from emp where sal =
阅读全文
摘要:查询一个字段:select 字段名 from 表名; 其中要注意: select和from都是关键字 字段名和表名都是标识符 强调: 对于SQL语句来说,是通用的 所有的SQL语句以“;”结尾 另外SQL语句不区分大小写,都行 例:查询部门名字:select dname from dept; 查询两
阅读全文
摘要:导入一下准备好的文件注意:路径中不要有中文!! 关于导入的这几张表 mysql> show tables; + + | Tables_in_bjpowernode | + + | dept | | emp | | salgrade | + + dept是部门表 emp是员工表 salgrade是工资
阅读全文
摘要:什么是表 数据库中最基本的单元是表:table 数据库当中是以表格的形式表示数据的,因为表比较直观 任何一张表都有行和列: 行(row):被称为数据/记录 列(column):被称为字段 姓名字段、性别字段、年龄字段 了解一下: 每一个字段都有:字段名、数据类型、约束等属性 字段名可以理解,是一个普
阅读全文