MySQL关键字不区分大小写
创建数据库
- 创建一个数据库并做判断(如果没有则创建)
CREATE DATABASE if NOT EXISTS sqlstudy;
使用数据库
- 使用数据库语句
USE sqlstudy;
删除数据库
- 如果存在,则删除数据库
DROP DATABASE IF EXISTS sqlstudy;
注意:如果表名或者字段名是一个特殊字符,就需要带`(tab键上方)
查看数据库
- 查看所有数据库
SHOW DATABASES;
数据库的数据类型(列)
数值
- tinyint 十分小的数据 1字节
- smallint 较小的数据 2字节
- mediumint 中等大小的数据 3字节
- int 标准的整数 4个字节,最常用
- bigint 较大的数据 8个字节
- float 浮点型 4字节
- double 浮点数 8字节
- decimal 字符串形式的浮点数(金融领域用得多)
字符串
- char 固定大小的字符串 0~255
- varchar 可变长字符串 0~65535
- tinytext 微型文本 2^8-1
- text 文本串 2^16-1
时间,日期
- date yyyy-MM-dd 日期格式
- time HH:mm:ss 时间格式
- datatime yyyy-MM-dd HH:mm:ss 最常用的时间格式
- timestamp 时间戳 1970.1.1 到至今的毫秒数
- year 年份表示
null
- 没有值 未知
- 注意: 不能使用null用于计算,结果为空
数据库字段属性(重点)
-
Unsigned
- 无符号的整数
- 声明了该列不能为负
-
zerofill
- 0填充的
- 不足的位数,使用0来填充
5 -- 005
-
自增
- 通常理解为自增,自动在上一条记录的基础上,自动加1(默认)
- 通常用来设计唯一的主键 index,必须为整数类型
- 可以自定义设计主键的起始值和步长
-
非空 null 和 not Null
- 假设设置为not Null,如果不给它赋值,就会报错!
- Null,如果不填写值,默认就是null
拓展
- 规范(每一个表都必须存在以下五个字段,表示记录存在有意义)
- id 主键(必须有)
version乐观锁- is_delete 伪删除
- gmt_create 创建时间
- gmt_update 修改时间