MySQL的数值类型,时间

数值类型

整数型  tinyint  smallint  mediumint  int|integer  bigint

注意:

1, 如何选择数据类型,我们的原则是:够用就行!尽量的选择占用内存小的整型,而且效率也更快!

2,可以使用unsigned来控制是否有符号位,如果不写,缺省值是有符号的

MySQL不会进行自动类型转换,如果超出了指定类型的范围,就直接报错!

3,可以指定数据显示的最小宽度,以达到统一显示的目的,通常的做法就是使用zerofill来进行填充

如果插入的数据,超出了指定的显示宽度,不影响原有的数据,该怎么显示就怎么显示:

4,其实,在MySQL中,也有bool型,但其实就是tinyint(1)的别名!

小数型  又可以分成浮点数和定点数!

浮点数  分成了单精度型和双精度型!其中单精度占4个字节,而双精度占8个字节!

单精度的有效位在6-7位之间,而双精度的有效位在16-17位之间!所以,我们在插入浮点数的时候也要注意,有时候没有超过浮点数的范围,但是超出了浮点数的精度!

注意:  1,浮点数还支持控制数字的范围,语法形式为:type(M,D)这里的type是指float或double

M:表示是所有数值位的范围(包括整数和小数部分,不包括小数点)D:表示小数的位数的范围,小数超出的部分会四舍五入

2,同php一样,浮点数也支持科学计数法

定点数  采用定点数存储!关键字:decimal

定点数策略:每当出现连续的9位数的时候,用4个字节单独存储,而且整数部分和小数部分分开存储!

定点数优缺点:  优点:所有的数据都会被精确的存储,不会造成数据的丢失!  缺点:占用的空间较大

注意:1, decimal同样支持decimal(M,D)语法此时,M指的是总位数,D代表小数的位数,默认的情况下,M为10,D为0

2, decimal同样也支持zerofill语法由于货币值往往都是decimal型,所以decimal型也叫作货币型!

日期时间型

datetime 和 timestamp

datetime和timestamp的显示形式和插入形式基本上是一样的,只是存储形式和能表示的日期的范围不一样,在timestamp中存储是整型,但是其显示形式和插入形式和datetime一样都是年月日时分秒

注意:  插入数据的时候可以支持任意的格式,使用什么分隔符不重要,日期的范围和格式才重要!  

     另外,还可以使用mysql内部的一个函数now()来插入,意思就是当前的年月日时分秒

date  相当于datetime的一个“子集”,只有年与日没有时分秒!

time  time型有两个含义:1, 一天中的时间(也就是datetime中的一个“子集”,只有时分秒)

              2, 表示时间间隔,表示时间的间隔的时候,格式为,D HH:MM:SS也就是  天  时:分:秒

year  只表示年份,但是年份可以简写,比如现实中98年认为是1998年!范围比较小,只能是1901年到2155年,因为只占一个字节!

注意: 如果年份只写两位,大于等于70的就代表19XX年,小于等于69的代表20XX年!

时间: 2024-12-09 03:08:44

MySQL的数值类型,时间的相关文章

php生成mysql数据库dateTime类型时间

1 $userdate = date("Y-m-d H:i:s",time());

Mysql 数值类型

Mysql数值类型 整数型 小数型(浮点数) 日期时间型

MySQL日期数据类型、时间类型使用总结

1.MySQL的五种日期和时间类型 MySQl中有多种表示日期和时间的数据类型.其中YEAR表示年份,DATE表示日期,TIME表示时间,DATETIME和TIMESTAMP表示日期和实践.它们的对比如下: TEAR ,字节数为1,取值范围为“1901——2155” DATE,字节数为4,取值范围为“1000-01-01——9999-12-31” TIME,字节数为3,取值范围为“-838:59:59——838:59:59” DATETIME,字节数为8,取值范围为“1000-01-01 00:

MySQL数值类型

MySQL中定义数据字段的类型对你数据库的优化是非常重要的. MySQL支持多种类型,大致可以分为三类:数值.日期/时间和字符串(字符)类型. 数值类型 MySQL支持所有标准SQL数值数据类型. 这些类型包括严格数值数据类型(INTEGER.SMALLINT.DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT.REAL和DOUBLE PRECISION). 关键字INT是INTEGER的同义词,关键字DEC是DECIMAL的同义词. BIT数据类型保存位字段值,并且支持MyIS

mysql numberic types ---- mysql 数值类型-简介

编程语言中大多都有数据类型一说.虽然mysql 的sql 语句与标准sql 有别.但是宏观上看还是差不多的:下面我们说一下mysql数据库中的数值类型 一.在mysql在有那些类型可以表示数值: 1.bit[(M)] 如果没有指定M的话.这种情况下M默认是1.也就是说也就是说它只能保存一个位.一个要么是零,要么是一:M可以在[1,64]当中取 mysql> create table t(x bit); Query OK, 0 rows affected (0.00 sec) mysql> in

关于Mac系统中SequelPro工具对于Mysql数值类型nt(M)存值的bug

说问题之前,聊表一下mysql数值类型int.众所周知,mysql数值类型int占四个字节,有符号.无符号整形存储的范围不同,有符号范围-2147483648 - 2127483647,无符号范围是0 - 4294967295(2^32是偶数,这里为什么是奇数,如果不清楚请自行补计算机位运算).Mysql类型关键字后面的括号内指定整数值的显示宽度(例如,INT(4)).该可选显示宽度规定用于显示宽度小于指定的列宽度的值时从左侧填满宽度.显示宽度并不限制可以在列内保存的值的范围,也不限制超过列的指

MySQL日期数据类型和时间类型使用总结

转自: http://blog.chinaunix.net/space.php?uid=11327712&do=blog&id=32416 MySQL 日期类型:日期格式.所占存储空间.日期范围 比较. 日期类型 存储空间 日期格式 日期范围 ------------ --------- --------------------- ----------------------------------------- datetime 8 bytes YYYY-MM-DD HH:MM:SS 1

C#DateTime.ToString 格式化时间字符串和数值类型转换为字符串

我们经常会遇到对时间进行转换,达到不同的显示效果,默认格式为:2006-6-6 14:33:34,如果要换成200606,06-2006,2006-6-6或更多的格式该怎么办呢?这里将要用到:DateTime.ToString的方法. 一.DateTime.ToString格式模式 下面列出了DateTime.ToString(string format) 中 format 参数.这些模式是区分大小写的:例如,识别"MM",但不识别"mm". d         

MYSQL支持的数据类型-数值类型

一.数值类型分类 MYSQL支持所有标准SQL中的数值类型,其中包括严格数值类型(INTEGER.SMALLINT.DECIMAL和NUMERIC),以及近似数值数据类型(FLOAT.REAL和DOUBLE PRECISON),并在此基础上扩展增加了TINYINT.MEDIUMINT.BIGINT这三种整型,并增加了BIT类型,用来存放位数据 其中整数类型包括:TINYINT.SMALLINT.MEDIUMINT.INT(INTEGER).BIGINT 浮点数类型包括:FLOAT.DOUBLE