文章目录
- 前言
- 数据类型
- 数值类型
- 整数类型
- 浮点数和定点数
- 字符串类型
- 字符类型:
- 文本类型:
- 二进制数据类型
- 日期和时间类型
- 实例分析
- 表的操作
- 添加字段
- 修改字段
- 删除字段
- 修改表名
- 删除表
- DDL总结
- DDL数据库操作
- DDL表操作
前言
上一节在MySQL第2讲–关系型数据库以及SQL语句分类之DDL数据库和表的操作我们介绍了,数据库的操作:查询数据库,创建数据库,删除数据库,适应数据库;表的操作:表的查询,表的创建;
在这一节我们将要接着讲述表的操作:表的修改和表的删除;以及数据类型;
数据类型
MySQL数据类型有很多,主要分为三类:数值类型、字符串类型、日期和时间类型;
数值类型
整数类型
- TINYINT:非常小的整数,所占内存大小1byte,有符号(SIGNED)范围从 -128 到 127,无符号(UNSIGNED)范围从 0 到 255。
- SMALLINT:小的整数,所占内存大小2byte,有符号范围从 -32,768 到 32,767,无符号范围从 0 到 65,535。
- MEDIUMINT:中等大小的整数,所占内存大小3byte,有符号范围从 -8,388,608 到 8,388,607,无符号范围从 0 到 16,777,215。
- INT 或 INTEGER:标准的整数,所占内存大小4byte,有符号范围从 -2,147,483,648 到 2,147,483,647,无符号范围从 0 到 4,294,967,295。
- BIGINT:大整数,所占内存大小8byte,有符号范围从 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807,无符号范围从 0 到 18,446,744,073,709,551,615。
浮点数和定点数
- FLOAT:单精度浮点数,所占内存大小4byte。
- DOUBLE:双精度浮点数,所占内存大小8byte。
- DECIMAL(M,D) 或 NUMERIC(M,D):定点数,可以存储精确的小数。M 是数字的总数(精度),D 是小数点后的位数(标度)。
字符串类型
字符类型:
- CHAR(M):大小:0~255bytes,固定长度的字符串,最多可存储 M 个字符。
- VARCHAR(M):大小:0~65535bytes,可变长度的字符串,最多可存储 M 个字符。实际长度+1字节或+2字节记录长度(取决于最大长度)。
文本类型:
- TINYTEXT:大小:0~255bytes,非常小的文本字符串。
- TEXT:大小:0~65535bytes,中等大小的文本字符串。
- MEDIUMTEXT:中等大小的文本字符串。
- LONGTEXT:非常大的文本字符串。
二进制数据类型
- BINARY(M):固定长度的二进制字符串,最多可存储 M 个字节。
- VARBINARY(M):可变长度的二进制字符串,最多可存储 M 个字节。
- BLOB、MEDIUMBLOB、LONGBLOB:分别用于存储二进制大对象(Binary Large OBjects)的不同大小的数据。
日期和时间类型
- DATE:日期值,格式 YYYY-MM-DD。
- TIME:时间值,格式 HH:MM:SS。
- DATETIME:日期和时间值,格式 YYYY-MM-DD HH:MM:SS。
- TIMESTAMP:时间戳值,格式 YYYY-MM-DD HH:MM:SS,但值会随时区变化。
- YEAR:年份值,格式 YYYY。
实例分析
根据以上数据类型穿件一个表格;
create table employ(
id tinyint comment '编号',
worknum varchar(10) comment '工号',
name varchar(10) comment '姓名',
gender char(1) comment '性别',
age tinyint unsigned comment '年龄',
idcard char(18) comment '身份证号',
intime datetime comment '入职时间'
)comment '员工表';
表格创建成功后,查询表结构如下:
如果相对表中的某个地方进行修改,我们该如何操作呢?接下来介绍表的操作,修改和删除。
表的操作
添加字段
ALTER TABLE 表名 ADD 字段名 类型(长度)
案例1:在上述创建的employ表中添加一个新的字段“昵称”;
添加完字段后,查看一下表格,可以看到新的字段已经被添加进去;
修改字段
- 修改数据类型
ALTER TABLE 表名 MODIFY 字段名 新的数据类型(长度);
- 修改字段名和字段类型
ALTER TABLE 表名 CHANGE 旧字段名 新字段名 类型(长度);
案例1:将employ表中的字段“nikename”,修改为“username”,类型为varchar(30);
添加完字段xi修改完字段后,查看一下表格,可以看到nikename字段已经被修改为username字段;
删除字段
ALTER TABLE 表名 DROP 字段名
案例1:将employ表中的字段“username”删除;
删除完字段后,查看一下表格,可以看到username字段已经被删除;
修改表名
ALTER TABLE 表名 RENAME TO 新表名;
修改完表名后,查看数据库中的表,可以看见,表名已经修改完成;
删除表
DROP TABLE [IF EXISTS] 表名; # 删除表
TRUNCATE TABLE 表名 # 删除指定表并重新创建该表(数据删除,只留下空表)
DDL总结
至此DDL所有的操作讲解完毕,接下来对DDL的操作,做一下简单的总结:
DDL数据库操作
CREATE DATABASE 数据库名; # 创建数据库
SHOW DATABASES; # 显示所有数据库
USE 数据库名; # 切换到所用数据库
SELECT DATABASE(); # 查看当前数据库
DROP 数据库名; # 删除数据库
DDL表操作
SHOW TABLES; # 显示所有表
CREATE TABLE 表名(字段 字段类型, 字段 字段类型); # 创建表
DESC 表名; # 查询表字段
ALTER TABLE 表名 ADD|MODIFY|CHANGE|DROP|RENAME TO..; #
ALTER TABLE 表名; # 删除表
如有错误欢迎指正,如果帮到您请点赞加收藏哦!