随笔分类 - 数据库 / MySQL
摘要:变量 1、在 MySQL 数据库的存储过程和函数中,使用变量来存储查询或计算的中间结果数据,或者输出最终的结果数据 2、分类:系统变量、用户自定义变量 系统变量 1、变量由系统定义,不是用户定义,属于服务器层面 2、启动 MySQL 服务,生成 MySQL 服务实例期间,MySQL 将为 MySQL
阅读全文
摘要:存储过程概述 1、含义:封装一组经过预先编译 SQL 语句 2、存储过程和函数能够将复杂的 SQL 逻辑封装在一起,应用程序无须关注存储过程,和函数内部复杂 SQL 逻辑,而只需要简单地调用存储过程和函数即可 3、MySQL 从 5.0 版本开始支持存储过程和函数 4、执行过程:存储过程预先存储在
阅读全文
摘要:SELECT:查询表中数据 SELECT DISTINCT * FROM 表名; SELECT DISTINCT 列名1, 列名2,…… FROM 表名; 1、* 代表查询所有列,或指定列名,效率低、可读性差,实际开发中不使用 2、FROM 指定查询的表 3、DISTINCT,可选参数,需要放到所有
阅读全文
摘要:使用 1、一个查询语句嵌套在另一个查询语句内部的查询 2、子查询(内查询)在主查询之前一次执行完成 3、子查询的结果被主查询(外查询)使用 4、事项 (1)子查询要包含在括号内 (2)将子查询放在比较条件的右侧 (3)单行操作符对应单行子查询,多行操作符对应多行子查询 分类 1、方式一 (1)单行子
阅读全文
摘要:聚合 / 聚集 / 分组函数 1、对一组数据进行汇总的函数 2、输入的是一组数据的集合,输出的是单个值 3、类型 (1)AVG():返回列的平均值 (2)SUM():返回指定列的数值总和 (3)MAX():返回列的最大值 (4)MIN():返回列的最小值 (5)COUNT() :返回指定列的行数(不
阅读全文
摘要:特点 1、操作数据对象 2、接受参数返回一个结果 3、只对一行进行变换 4、每行返回一个结果 5、可以嵌套 6、参数可以是一列或一个值 数值函数 1、基本函数 函数 用法 ABS(x) 返回 x 的绝对值 SIGN(x) 返回 x 的符号。正数返回 1,负数返回 -1,0 返回 0 PI() 返回圆
阅读全文
摘要:多表查询 / 关联查询 1、指两个或更多个表一起完成查询操作 2、前提条件:这些一起查询的表之间是有关系的(一对一、一对多),它们之间一定是有关联字段 笛卡尔积 / 交叉连接 / CROSS JOIN 1、假设两个集合 X 和 Y,那么 X 和 Y 的笛卡尔积就是 X 和 Y 的所有可能组合 (1)
阅读全文
摘要:算术运算符 1、加:+、减:- (1)一个整数类型的值对整数进行加法和减法操作,结果还是一个整数 (2)一个整数类型的值对浮点数进行加法和减法操作,结果是一个浮点数 (3)加法和减法的优先级相同,进行先加后减操作与进行先减后加操作的结果是一样的 (4)在 Java 中,+ 的左右两边如果有字符串,那
阅读全文
摘要:关系型数据库有六种常见范式 1、按照范式级别,从低到高:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)、第五范式(5NF,完美范式) 2、数据库的范式设计越高阶,冗余度就越低,同时高阶范式一定符合低阶范式的要求 3、一般在关系型数据库设计中
阅读全文
摘要:用户管理 1、MySQL 用户存储在 user 表中 2、user 表的字段 (1)host:允许登录的位置,如 localhost、其他 IP (2)user:用户名 (3)authentication_string:对应用户的密码,非明文存放,通过 PASSWORD() 函数加密 3、创建用户
阅读全文
摘要:概述 1、一个或者多个数据表里的数据的逻辑显示,是向用户提供基表数据的另一种表现形式 2、视图是一种虚拟表,并不存储数据,占用很少的内存空间 3、视图建立在已有表的基础上,视图赖以建立的这些表称为基表,可以为多个基表 4、视图的创建和删除只影响视图本身,不影响对应的基表,但是当对视图中的数据进行增加
阅读全文
摘要:1、表类型主要由存储引擎决定 2、MySQL 数据表主要支持六种类型:CSV、Memory、ARCHIVE、MRG_MyISAM、MyISAM、InnoDB 3、主要使用:MyISAM、InnoDB、Memory 4、事务安全型:InnoDB,其余为,非事务安全型:如 MyISAM、Memory 5
阅读全文
摘要:事务 1、保证数据一致性,由一组相关 DML 语句组成,要么全成功,要么全失败 2、执行事务操作时,MySQL 会在表上加锁,防止其他用户修改表的数据 3、基本操作 (1)开始一个事务 START TRANSACTION; 或 BEGIN; 或 SET autocommit=off; (2)设置保存
阅读全文
摘要:索引优劣 1、无索引:SELECT 语句效率低 2、有索引:SELECT 语句效率高,但磁盘占用较多空间,影响 INSERT、DELETE、UPDATE 语句效率 3、SELECT 操作一般占 90%,INSERT、DELETE、UPDATE 操作占 10% 索引类型 1、主键索引:PRIMARY
阅读全文
摘要:数据完整性(Data Integrity) 1、指数据的精确性(Accuracy)和可靠性(Reliability) 2、防止数据库中存在不符合语义规定的数据,防止因错误信息的输入输出,造成无效操作或错误信息 3、为了保证数据的完整性,SQL 规范以约束的方式对表数据进行额外的条件限制 (1)实体完
阅读全文
摘要:子句顺序 SELECT 列名1, 列名2…… FROM 表名 WHERE …… GROUP BY 列名1, 列名2 …… HAVING …… ORDER BY 列名1,列名2 …… LIMIT start, rows; 排序 1、ORDER BY 子句 2、ASC(ascend):升序,默认 3、D
阅读全文
摘要:DUAL:亚元表,可以作为测试表使用 合计 / 统计函数 1、COUNT:返回指定列的行总数 SELECT COUNT(*) FROM 表名; SELECT COUNT(列名) FROM 表名; (1)WHERE 子句可选 (2)COUNT(*):统计并返回满足 WHERE 条件的行数,不排除 NU
阅读全文
摘要:插入数据 1、INSERT:向表中插入行 2、VALUES 方式添加 (1)VALUES 也可以写成 VALUE ,但是 VALUES 是标准写法 (2)字符型 / 日期型数据应包含在 '' 中 (3)数据长度需要在列的数据类型的规定范围内 (4)可以插入 NULL,前提是列允许为 NULL 3、情
阅读全文
摘要:事项 1、反引号 `` 中的内容可以规避关键字 2、命名规范:所有标识符全部小写,单词之间使用下划线 _ 连接 创建数据库 CREATE DATABASE IF NOT EXISTS `数据库名` CHARACTER SET `字符集` COLLATE `校对规则`; 1、IF NOT EXISTS
阅读全文
摘要:MySQL 中的数据类型 类型 类型举例 整数类型 TINYINT、SMALLINT、MEDIUMINT、INT(INTEGER)、BIGINT 浮点类型 FLOAT、DOUBLE 定点数类型 DECIMAL 位类型 BIT 日期时间类型 YEAR、TIME、DATE、DATETIME、TIMEST
阅读全文