1、SQL基础应用
①.SQL的介绍
SQL标准:SQL-92、SQL-99
SQL_MODE:都是为了保证SQL语句的规范性
②.SQL常用分类
DDL:数据定义语言
DCL:数据控制语言
DML:数据操作语言
DQL:数据查询语言
③.表的核心属性
a.数据类型
a.a.数字类型
a.b.字符串
注意: 以上数据类型,必须要定义最长字符长度,用括号中的数字表示
char类型,是定长类型,无关字符长度,不管存储多长的数据,都立即立即分配10个字符长度的存储空间,如果无法占满,用空来填充
varchar类型,可变长度,按需分配存储空间。每次都要计算字符串长度,按区分配。varchar除了存储字符串,还会存储字符长度。小于255的字符,会额外占用1个字节存储长度,大于255的字符长度,会占用两个字节长度,存储字符长度。
a.c.时间类型
a.d.二进制类型(一般不用)
b.约束
no null:非空
unique key:唯一
primary key:主键(非空且唯一)
说明:
1.一个表有且一个主键列,最好是一个无关列数字列,一般会在表中设置自增长的id列
2.尽量每个列非空,如果无法保证,可以追加默认值
3.手机号,身份证号,银行卡号...种类的列设定为UK
c.其他属性
名称 | 属性 |
---|---|
unsigned | 无符号,一般在int或者tinyint后添加附加属性 |
default | 设定默认值 |
auto_increment | 数字列自增长 |
comment | 注释信息 |
2、表的属性
存储引擎
engine=innod
字符集及校对规则
字符集:
名称 | 特点 |
---|---|
gbk | |
utf8mb3 | 中文占3个字符 |
utf8mb4 | 中文占4个字符,支持emoji字符(表情) |
校对(排序)规则:collation
校对规则跟着字符集走的。
例如:utf8mb4
show collation
utf8mb4_general_ci --->通用的校对,默认值,大小写不区分
utf8mb4_bin --->大小写区分