MySQL
1 数据库
Database,简称DB。按照一定的数据结构来组织、存储和管理数据的仓库。
2 SQL
SQL(Structured Query Language),结构化查询语言。
是一种操作关系型数据库的编程语言,定义了一套操作关系型数据库统一SQL标准。
3 关系型数据库
关系型数据库:由多张相互链接的二位表组成的数据库,就像Excel一样,由行和列表组成的二维表。
特点:
- 使用表存储数据,格式统一,便于维护
- 使用SQL语句操作,标准统一,使用方便
- 数据存储在磁盘中,安全
代表:
- Mysql
- Oracle
4 MySQL概述
MySQL是一种广泛使用的开源关系型数据库管理系统(RDBMS),它是最流行的开源数据库之一。MySQL由瑞典的MySQL AB公司开发,后来被sun收购,最终被Oracle收购。MySQL以其开源免费、简单易用、高性能和可靠性而闻名。
Oracle收费,性能稳定。
5 数据库操作
1 连接数据库
- 打开navicate
- 点击链接
- 选择Mysql
- 填写数据库连接信息
- 确认连接(连接前也可以测试连接)
2 创建数据库
- 选择数据库
- 右键选择新建数据库
- 填写数据库名,字符集,排列规则
字符集:utf8mb4兼容性更好
排序规则:默认utf8mb4_0900_ai_ci。 0900 指的是 Unicode 校对算法版本 , ai 指的是口音不敏感;也就是说,排序时 e,è,é,ê 和 ë 之间没有区别; ci 表示不区分大小写。也就是说,排序时 p 和 P 之间没有区别。
6 创建表
1 数据类型
- 数字
类型 | 大小 | 描述 |
---|---|---|
TINYINT | 1 byte | 小整数值 |
INT或INTEGER | 4 bytes | 整数值 |
FLOAT | 4bytes | 单精度浮点数值 |
DECIMA |
- 字符串
类型 | 大小 | 描述 |
---|---|---|
CHAR | 0-255 bytes | 定长字符串 |
VARCHAR | 0-65535 bytes | 变长字符串 |
TEXT | 0-65 535 bytes | 长文本数据 |
-
日期类型
类型 格式 描述 DATE YYYY-MM-DD 日期值 TIME HH:MM:SS 时间值或持续时间 YEAR YYYY 年份值 DATETIME YYYY-MM-DD HH:MM:SS 混合日期和时间值 TIMESTAMP YYYY-MM-DD HH:MM:SS 混合日期和时间值,时间戳 CHAR和VARCHAR的区别:
-
char不论实际存储了多少的字符,都会占用设置的n个字符空间,比如手机号码,性别,身份证号等
-
varchar他存储的长度并不固定,实际使用多少就占用多少
DATETIME和TIMESTAMP区别:
TIMESTAMP: 1970-01-01 00:00:01.000000’到 2038-01-19 03:14:07.999999。
DATETIME: 1000-01-01 00:00:00.000000到 9999-12-31 23:59:59.999999。
对于跨时区的业务,TIMESTAMP更为合适。
2 创建表
- 打开数据库,右键–新建表
- 填写字段名,类型,长度等信息
3 删除表
- 直接删除
7 SQL通用语法
- SQL语句可以单行或多行书写,以分号结尾。
- SQL语句可以使用空格/缩进来增强语句的可读性。
注释:
单行注释:–注释内容 或# 注释内容
多行注释:/* 注释内容 */
8 表操作
1 添加数据(INSERT)
# 给制定字段添加数据
insert into 表名(字段1,字段2...) values (值1,值2...);
# 给全部字段添加数据
insert into 表名 values(值1,值2....);
# 批量添加数据
insert into 表名 (字段1,字段2...) values (值1,值2...),(值1,值2...),(值1,值2...);
insert into 表名 values (值1,值2...),(值1,值2...),(值1,值2...);
2 修改数据(UPDATE)
update 表名 set 字段1=值1, 字段2=值2,....where 条件
修改语句的条件可以有,也可以没有,如果没有条件,则会修改整张表的所有数据。
3 删除数据(DELETE)
delete from 表名 where 条件
DELETE 语句的条件可以有,也可以没有,如果没有条件,则会删除整张表的所有数据。
9 条件(where)
sql语句里,where后面跟条件
# 运算符
=、!=、<>、<、>、<=、>=
# 关键字
BETWEEN…AND、IN(set)、IS NULL、AND、OR、NOT