1.表的操作
1.1创建表
语法:
CREATE TABLE table_name(
field1 datatype,
field2 datatype,
field3 datatype
) character set 字符集 collate 校验规则 engine 存储引擎;
field表示列名,database表示列的类型,character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准。collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准。
创建表的案例:
create table users (
id int,
name varchar(20) comment '用户名',
password char(32) comment '密码是32位的md5值',
birthday date comment '生日'
) character set utf8 engine MyISAM;
1.2查看表
使用desc 表名; 即可查询表的结构。
示例:

1.3修改表
修改表时通常会有三种情况:1.添加字段、2.修改字段、3.删除字段。不同的情况对应着不同的语法。添加字段:ALTER TABLE table_name ADD (column datatype [DEFAULT expr][,column datatype]...); 修改字段:ALTER TABLE table_name MODIFY (column datatype [DEFAULT expr][,column datatype]...); 删除字段:ALTER TABLE table_name DROP (column datatype [DEFAULT expr][,column datatype]...);注意:删除字段一定要小心,删除字段及其对应的列数据都没了
案例:
mysql>alter table users add assets varchar(100) ;//在users表添加一个字段,用于保存图片路径
mysql> alter table users modify name varchar(60);//修改name,将其长度改成60
mysql> alter table users drop password;//删除password列
1.4删除表
删除表的语法格式为:DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...
一般情况下表也不要轻易删除的。
2.数据类型
2.1数值类型
整数类型
TINYINT 占用 1 字节 取值范围负一百二十八到一百二十七 适合存储状态标识性别类别等少量数值数据。SMALLINT 占用 2 字节 存储范围大于极小整数 适用于数据量偏小的编号数据。MEDIUMINT 占用 3 字节 适配日常中等范围数字存储场景。INT 日常开发最常用整数类型 占用 4 字节 可满足绝大多数序号年龄数量编号存储需求。BIGINT 占用 8 字节 数值存储范围极大 用于存储超大编号流水号长整型唯一标识 在整数类型后添加 unsigned 代表设置为无符号类型 仅存储非负数 扩大正数存储范围 添加 zerofill 可自动补齐前置零。
浮点类型
FLOAT 单精度浮点型 存储空间小 数据存储精度较低 仅适用于对精度要求不高的小数数据。 DOUBLE 双精度浮点型 精度高于单精度浮点 普通小数存储场景使用较多
定点数类型
DECIMAL 精准数值类型 格式为DECIMAL 总长度小数位数 存储数值无精度丢失 是存储金额工资价格财务数据的专用类型
2.2字符串类型
CHAR 固定长度字符串 定义长度后占用空间固定 存取速度快 字符长度不足自动补齐空格 适合手机号身份证号邮编等长度固定数据 。VARCHAR 可变长度字符串 按照实际字符占用空间 节省存储空间 是项目中使用最多的字符串类型 用于用户名简介地址等长度不固定文本。TEXT 长文本类型 无固定长度限制 专门用于存储大篇幅文字内容 例如文章正文长篇备注信息。ENUM 枚举类型 提前设定固定可选值 数据录入只能选择预设内容 限制输入范围 适用于性别学历订单状态等固定选项数据。SET集合类型 支持同时选取多个预设值 可存储多项组合类数据。
2.3日期时间类型
DATE 仅存储年月日 格式为年年月月日日 用于记录单纯日期数据。TIME 仅存储时分秒 专门记录具体时间时段。DATETIME 组合类型 同时存储年月日时分秒 可完整记录完整时间信息 日常业务使用频率最高。TIMESTAMP 时间戳类型 存储范围较小 会跟随时区变化自动转换 多用于记录数据创建修改时间。YEAR 仅单独存储年份数据 占用空间极小
2.4二进制类型
BINARY 固定长度二进制数据 对应字符固定存储格式。VARBINARY 可变长度二进制数据 适配不定长二进制内容。BLOB 大容量二进制存储类型 主要用来存放图片文件音频视频等非文本文件数据。