MySQL支持的数据类型
来源:互联网 发布:oracle查询不重复数据 编辑:程序博客网 时间:2024/05/28 04:55
3.mysql数值类型
分类:严格数值类型(INTEGER、SMALLINT、DECIMAL和NUMERIC)
近似数值数据类型(FLOAT、REAL和DOUBLE PRECISION)
在此基础上进行拓展,增加了TINYINT、MEDIUMINT和BIGINT等3种整型,以及用于存放位数据的BIT类型。
在整数类型中,按照取值范围和存储方式不同,分为tinyint、smallint、meiumint、int和bigint。
如果超出类型范围的操作,会发生“Out of range”错误提示。
在t1表中插入数据,进行对比:
发现在数值面前用字符“0”填充了剩余的宽度,id2中显示了正确的数值,并没有受到宽度限制的影响。
对于小数的表示,MySQL主要分为:浮点数和定点数
a.浮点数(float、double)
b.定点数(decimal,定点数在MySQL内部以字符串的形式存放,比浮点数更精确,适合用来表示货币等精度高的数据)。
日期和时间类型
主要区别:
DATA,年月日
DATATIME,年月日时分秒
TIME,时分秒
TIMESTAMP,插入或更新日期为当前系统时间
YEAR,显示年份,比DATE占用更小空间。
MySQL中的日期和时间类型:
日期和时间类型字节最小值最大值DATE41000-01-019999-12-31DATETIME81000-01-01 00:00:009999-12-31 23:59:59TIMESTAMP4197001010800012038年的某个时刻TIME3-838::59:59838:59:59YEAR119012155
如:创建表t,字段分别为date,time,datetime三种日期类型
用now()函数插入当前日期:
显而易见,DATETIME是DATE和TIME的组合,可根据不同需要,来选择不同的日期或者事件类型来满足不同的应用。
CHAR和VARCHAR类型
CHAR列的长度固定为创建表的声明的长度,长度为0~255;
VARCHAR列中的值可变为长字符创,长度可以是0~65535。
在检索时,CHAR列删除了尾部的空格,而VARCHAR则保留了这些空格。
如:创建测试表vc
mysql>create table vc (varchar(4),char(4));
v和c列中同时插入字符串“ab 空格”;
mysql>insert into vc values('ab ','ab ');
显示各列字段的长度值只有2
查询结果:
BINARY和VARBINARY类型
可以发现,当保存BINARY值时,在值的最后通过填充“0x00”(零字节)以达到指定字段定义长度。对于一个BINARY(3)列,当插入时‘a’变为“a\0\0”。
ENUM(枚举)类型
枚举型的值范围需要在创建表时通过枚举方式显式指定,对于1~255个成员的枚举需要1个字节存储;对于255~65535个成员,需要2个字节存储。最多允许有65535个成员。
示例:
mysql>create table et(gender enum('M','F'));
mysql>insert into et values('M'),('1'),('f'),(NULL);
mysql>select * from et;
从上可以看出ENUM类型是可以忽略大小的,在存储‘M’,‘f’时将它们都转化成了大写,同时在插入不在ENUM指定范围内的值时,并没有返回警告,而是插入了enum(‘M’,'f')的第一个‘M’值。
SET类型
SET类型也是字符串对象,里面可以包含0~64个成员。根据成员的不同,存储上也有不同:
1~8成员的集合,占1字节;
9~16成员的集合,占2个字节;
17~24成员的集合,占3个字节;
25~32成员的集合,占4个字节;
33~64成员的集合,占8个字节。
SET和ENUM除了存储以外,最主要的区别在于SET类型一次可以选取多个成员,而ENUM则只能选择一个。
示例:
【注】SET类型可以允许值集合中选择任意1个或多个元素进行组合,所以对输入的值只要是在允许值的组合范围内,都可以正确地注入到SET类型的列中。对于超出允许值范围的值例如(‘a,d,f’)将不允许注入到上面例子中设置的SET类型列中,而对于(‘a,b,a’)这样包含重复成员的集合将只取一次,写入后的结果为“a,d”。
莫让幽怨记心头,你我不过半壶酒;策马奔腾何处走,我来世还复休。
- MySQL支持的数据类型
- MySQL支持的数据类型
- Mysql支持的数据类型
- Mysql支持的数据类型
- mysql支持的数据类型
- Mysql支持的数据类型
- MySQL支持的数据类型
- MySQL支持的数据类型
- Mysql支持的数据类型
- MySQL支持的数据类型
- mysql支持的数据类型
- Mysql支持的数据类型
- MySQL支持的数据类型
- (2)mysql支持的数据类型
- Mysql支持的数据类型(总结)
- Mysql支持的数据类型(总结)
- mysql支持的数据类型简介
- Mysql支持的数据类型(总结)
- RISC和CISC区别
- hdu2476(区间dp)
- 【状压DP】LOJ#6177. 「美团 CodeM 初赛 Round B」送外卖2
- 方差、标准差、均方差、均方误差区别总结
- NDK 开发(一:基本流程入门了解)
- MySQL支持的数据类型
- 动态执行python代码
- DES详解
- 第5章设置开发板的IP地址
- 数值分析--线性多项以及多元最小二乘拟合python3实现并画图
- java 实现两个变量的互换(不借助第三个变量,即中间变量、临时变量)
- 108. Convert Sorted Array to Binary Search Tree
- maven配置tomcat插件
- Ip地址正则表达式