字段类型

整型

MySQL数据库中整型的字段类型有多个,但是我们只需要了解其中几个即可
tinyint			1bytes			正负号(占1bit)
smallint		2bytes			正负号(占1bit)
int			    4bytes           正负号(占1bit)
bigint			8bytes			正负号(占1bit)
在MySQL数据库中整型数据的存储是默认自带正负号的
我们也可以取消正负号
    create table t5(id tinyint unsigned);  # unsigned 起到一个取消正负号的作用

浮点型

MySQL数据库中浮点型的字段类型有多个,但是我们只需要了解三中即可
float(40,20)  共存储40位数,小数点后面占20位
double(40,20)  共存储40位数,小数点后面占20位
decimal(40,20)  共存储40位数,小数点后面占20位

这三个浮点型的核心区别在于对数字的精确度不同
float的精确度大概只能到小数点后七八位
double的精确度大概能到小数点后十四位左右
decimal的精确度最高,几乎是给的什么数就存取什么数

字符类型

MySQL中字符类型有两个
char  定长  char(4)固定存储长度为4个字符,超出会报错,不足会以空格填充至四个
varchar  变长  varchar(4)最多存储四个字符,超出报错,不足则有多少存多少

create table t6(name char(4));
create table t7(name varchar(4));
insert into t6 values('j');
insert into t7 values('j');
直接查看表中存储的数据看不出来数据长短,需要查看字段存储的长度使用 char_length()
默认情况下MySQL针对char的存储会自动填充空格和删除空格,如果要取消空格自动删除使用下面语句
set global sql_mode='strict_trans_tables,pad_char_to_full_length';

二者对比
    char  整存整取,速度快但是浪费存储空间
    varchar  节省存储空间,但是存取数据的速度较char慢
    
具体的使用需要根据实际情况

数字的含义

字段类型括号中的数字在很多地方都是用来表示限制存储数据的长度
但是在整形中数据不是用来限制存储长度的,而是用来控制展示的长度

create table t8(id int(3));  # 直接写没啥用
insert into t8 values(12345),(1);

create table t9(id int(3) zerofill);
insert into t9 values(12345),(1);
select * from t9;  # 12345,001

# 我们以后写整形无需添加数字除非有特殊需要

枚举与集合

枚举 (多选一)
    create table t10(name enum('jason','kevin','jack'));
    insert into t10 values('tony');  # 报错
    insert into t10 values('jason');
    insert into t10 values('kevin');
    查询出来的结果为jason和kevin
集合(多选多,多选一)
    create table t11(name set('jason','kevin','jack'));
    insert into t11 values('tony');  # 报错
    insert into t11 values('jack');
    insert into tii values('jason','kevin')
    
    select * from t11;  # jack  jason,kevin

日期类型

日期类型的数据一般都是系统自动操作
create table t12(
    register_time datetime,  # 年月日时分秒
 	birthday date,  # 年月日
 	study_time time,  # 时分秒
 	work_time year  # 年
);
insert into t12 values('2022-11-23 17:17:33','2022-11-23','17:17:51','2022')

原文地址:http://www.cnblogs.com/zyg111/p/16919422.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性