文档详情

(mysql数据库小知识.doc

发布:2017-01-19约字共5页下载文档
文本预览下载声明
----------------------------------Mysql数据库-------------------------------------------- 1.字段为int类型 ? 如果在建表时不指定字段int类型的长度时,系统则默认生成长度为11的字段。11也是int类型的最大长度,其中第一位表示符号+或者-,后面十位表示数字。 ? 如果指定了长度,该字段其实也是长度为11的字段,因为只要是int类型,系统都分配了长度11位。 ? 所以,当我们在用mysql数据库建表时如果有字段为int类型则不用指定长度了。 2.字段为float类型 ?? 如果在建表时不指定float类型的长度时,系统默认生成长度为9的字段(不包含小数点9位,但包括符号)。而且当插入小数时自动转化为了整数。 ?? 当我们指定了长度时,如果为length=6,decimals=2.则代表整数最多为4位(不包括符号位),小数最多为2位。如-1234.12可以插入。 ?? 所以,我们在用mysql数据库建表时如果有字段为float类型一定要指定长度和小数位数。 3.字段为double类型 ? 在建表时如果有字段时double类型,例如我们指定length=16,decimals=2.则代表整数最多为16位(不包括符号位),小数最多为2位。如-1234567890123456.12可以插入。 4.字段为日期类型(我们在指定日期类型时不需要设置长度) ?? date类型代表yy-mm-dd? 支持的范围是1000-01-01到9999-12-31 ?? time类型代表hh:mm:ss ?? datetime类型代表yyyy-mm-dd hh:mm:ss? 支持的范围是1000-01-01 00:00:00到9999-12-31 23:59:59。 ?? timestamp类型代表yyyy-mm-dd hh:mm:ss? TIMESTAMP值可以从1970的某时开始一直到2037年,精度为一秒,其值作为数字显示。次字段可以用来获得当前默认时间,再default默认值写上CURRENT_TIMESTAMP即可?MySQL学习笔记--数据类型方括号中的属性可以在DDL语句中控制COLUMN的详细属性 一、整数型 1.INT[(width)][UNSIGNED][ZEROFILL] MySQL用4 bytes存储INT型数据,其值在-2,147,483,648到2,147,483,647之间,如果选择了UNSIGNED类型,那么值在0到4,294,967,295。INT和INTEGER可以互换。(width)指定了数字的位数,如果实际的值超出了这个位数,那么(width)会被忽略。如果是UNSIGEND,通过指定ZEROFILL会由0在左侧占位补足 2.BOOLEAN 也可以写为BOOL或BIT,需要1个byte空间,用来存储boolean value,false(zero)或者true(nonzero),等价于TINYINT(1) 3.TINYINT[(width)][UNSIGNED][ZEROFILL] 需要一个byte空间,值的范围在-127到128或0到255 4.SMALLINT[(width)][UNSIGNED][ZEROFILL] 需要2bytes空间,值的范围在-32768到32767或者0到65535 5.MEDIUMINT[(width)][UNSIGNED][ZEROFILL] 需要3个byte,范围在-8,388608到8,388,607或者0到16,777,215 6.BIGINT[(width)][UNSIGNED][ZEROFILL] 需要8个byte,范围在-9,223,372,036,854,775,808到9,223,372,036,854,775,807或0到18,446,744,073,709,551,615 二、浮点数型 1.DECIMAL[(width[,decimals])][UNSIGNED][ZEROFILL] 也可以使用关键字DEC,NUMERIC,FIXED。在5.0.3版本以前,是作为string来存储的。从5.0.3版本以后,采用二进制存储,对每9位数字用4bytes存储。和INT不同,DECIMAL能存储的值是由(width,decimal)来确定的,超过的值会保存为指定范围内最接近的值。在5.0.3版本以前,正数的存储范围还可以比指定的范围在整数部分多1位 2.FLOAT[(width,decimals)][UNSIGNED][ZEROFILL] or FLOAT[(precision)][UNSIGNED][Z
显示全部
相似文档