第一章:MySQL概述
数据库:数据存储的仓库。
数据库管理系统:操纵和管理数据库的大型软件。
SQL:操作关系型数据库的编程语言,是一套标准。
MySQL基础语句:
net start mysql80 启动
net stop mysql80 停止
配置系统路径(Path)后,进入命令行(CMD),输入:mysql -u root -p 后输入密码即可进入数据库。
数据模型:
一个数据库服务器可以创建多个数据库,而一个数据库可以创建多张表
关系型数据库:基于表进行数据存储的数据库
第二章:SQL
SQL分类:
分类 | 全称 | 说明 |
---|---|---|
DDL | Data Definition Language | 数据定义语言,用来定义数据库对象(数据库,表,字段) |
DML | Data Manipulation Language | 数据操作语言,用来对数据库表中的数据进行增删改 |
DQL | Data Query Language | 数据查询语言,用来查询数据库中表的记录 |
DCL | Data Control Language | 数据控制语言,用来创建数据库用户、控制数据库的访问权限 |
DDL-数据库操作:
1、查询
查询所有数据库
SHOW DATABASES;
查询当前数据库
SELECT DATABASE();
2、创建
CREATE DATABASE [IF NOT EXISTS] 数据库名 [DEFAULT CHARSET 字符集] [COLLATE 排序规则];
3、删除
DROP DATABASE [IF EXISTS] 数据库名;
4、使用
USE 数据库名;
DDL-表操作-查询:
1、查询当前数据库所有表
SHOW TABLES;
2、查询表结构
DESC 表名;
3、查询指定表的建表语句
SHOW CREATE TABLE 表名;
DDL-表操作-创建
CREATE TABLE 表名(
字段1 字段1类型 [COMMENT 字段1注释],
字段2 字段2类型 [COMMENT 字段2注释],
字段3 字段3类型 [COMMENT 字段3注释],
字段n 字段n类型 [COMMENT 字段n注释]
) [COMMENT 表注释];
注意:[..]为可选参数,最后一个字段后面没有逗号
数据类型:
分类 | 类型 | 大小 | 有符号(SIGNED)范国 | 无符号(UNSIGNED)范国 | 描述 |
---|---|---|---|---|---|
数值类型 | TINYINT | 1 byte | (-126. 127) | (0.255) | 小整数值 |
SMALLINT | 2 bytes | (-32768. 32767) | (0.65535) | 大整数值 | |
MEDIUMINT | 3 bytes | (-8388608, 8388607) | (0,16777215) | 大整数值 | |
INT或INTEGER | 4 bytes | (-2147483648,2147483647) | (0,4294967295) | 大整数值 | |
BIGINT | 8 bytes | (-2^63, 2^63-1) | (0,2^64-1) | 极大整数值 | |
FLOAT | 4 bytes | (-3.402823466 +38,3.402823466351 E+38) | 0和1.175494351E-38,3.402823466 +38) | 单精度浮点数值 | |
DOUBLE | 8 bytes | (-1.7976931348623157 E-308, 1.7976931348623157 E+308) | 0和(2.2250738585072014-308,1.7976931348623157 E+308) | 双精度浮点数值 | |
DECIMAL | 依赖于M(精度)和D(标度)的值 | 依赖于M(精度)和D(标度)的值 | 小数值(精确定点数) |
分类 | 类型 | 大小 | 描述 |
---|---|---|---|
字符串类型 | CHAR | 0-255 bytes | 定长字符串 |
VARCHAR | 0-65535 bytes | 变长字符串 |
分类 | 类型 | 大小 | 范国 | 格式 | 描述 |
---|---|---|---|---|---|
日期类型 | DATE | 3 | 1000-01-01至9999-12-31 | YYYY-MM-DD | 日期值 |
TIME | 3 | -030:59:59至030:59:59 | HH:MM:SS | 时间值或持续时间 | |
YEAR | 1 | 1901 至 2155 | YYYY | 年份值 | |
DATETIME | 8 | 1000-01-0100:00:00至9999-12-31 23:59:59 | YYYY-MM-DD HH:MM:SS | 混合日期和时间值 | |
TIMESTAMP | 4 | 1970-01-0100:00:01至2038-01-1903:14:07 | YYYY-MM-DD HH:MM:SS | 混合日期和时间值,时间戳 |
DDL-表操作-修改
1、添加字段
ALTER TABLE 表名 ADD 字段名 类型 (长度) [COMMENT 注释] [约束];
2、修改数据类型
ALTER TABLE 表名 MODIFY 字段名 新数据类型(长度);
3、修改字段名和字段类型
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度) [COMMENT 注释] [约束];
4、删除字段
ALTER TABLE 表名 DROP 字段名;
5、修改表名
ALTER TABLE 表名 RENAME TO 新表名;
DDL-表操作-删除
1、删除表
DROP TABLE [IF EXISTS] 表名;
2、删除指定表,并重新创建该表
TRUNCATE TABLE 表名;