MySQL 数据(字段)类型
发布时间:2011-09-10 16:15:56
MySQL 数据(字段)类型
在创建表的时候,要明确定义字段对应的数据类型。MySQL 主要的数据类型分为数值类型、字符串(文本)类型、时间日期类型和其他类型几类。
数值类型
类型 说明 例子 tinyint 存储范围:-128至127或0至255 tinyint(1) smallint 存储范围:-32768至32767或0至65535 smallint(3) mediumint 存储范围:- 8388608至8388607或0至16777215 mediumint(5) int 存储范围:- 2147483648至2147483647或0至4294967295 int(10) bigint 存储范围:- 9223372036854775808至9223372036854775807或0至18446744073709551615 bigint(10) float 最小非零值:±1.175494351E – 38,同double一样适用于精度要求高的场合 float(3,1) double 最小非零值:±2.2250738585072014E - 308 double(10,5) decimal 取值范围可变,以来括号内的显示尺寸和小数点位数而定,适用于对精度要求不高但准确度要求非常高的场合 decimal(10,2)
补充说明
在 int(integer) 系列中,只能存储整型值,且可以在后面用括号指定显示的尺寸(M),如果不指定则会默认分配。如果实际值的显示宽度大于设定值,将会显示实际值而不会截断以适应显示尺寸。如 smallint(3) 中的 3 即为显示尺寸,即显示三位的数值(不包括 - 号)
int 类型可以指定 UNSIGNED 属性,即无符号(非负),所以存储范围有两种
在 float、double 及 decimal 类型中,不能指定 UNSIGNED 属性,其显示尺寸包含了小数点精度(D),即 float(3,1) 保存范围为 -99.9 至 99.9
decimal 必须指定显示尺寸(M)和小数点精度(D),float 和 double 都是可选的
在可能涵盖取值范围的基础上,尽可能选择较小的类型以提高效率和节约存储空间,如年龄,就选择 tinyint(3) 。该原则对于字符类型同样适用
字符串(文本)类型
类型 说明 例子 char 支持固定长度的字符串, 最大长度是 255 个字符 char(100) varchar 支持可变长度的字符串, 最大长度是 65535 个字符 varchar(1000) tinytext 支持可变长度的字符串,最大长度是 255 个字符 tinytext text
blob 支持可变长度的字符串,最大长度是 65535 个字符 text mediumtext
mediumblob 支持可变长度的字符串,最大长度是 16777215 个字符 mediumtext longtext
longblob 支持可变长度的字符串,最大长度是 4294967295 个字符 longtext enum 枚举类型,可存储最多65535 个成员,常用于取值是有限而且固定的场合 enmu("男","女") set 集合类型,可存储最多64个成员 set("value1","value2", ...)
补充说明
char 和 varcha 需要指定长度,不同的是,char 存储时总是按照指定的长度储存,而 varchar 则根据实际字符串长度再加上一个字节分配空间。
时间日期类型
类型 说明 例子 date YYYY-MM-DD 格式表示的日期值 date time hh:mm:ss 格式表示的时间值 time datetime YYYY-MM-DD hh:mm:ss 格式表示的日期和时间值 datetime timestamp YYYYMMDDhhmmss 格式表示的时间戳值 timestamp year YYYY 格式表示的年份值 year
提示
在 PHP 中,一般情况下对于时间都是按照 UNIX 时间戳以 int 类型存储于表中,再根据实际需要用 PHP 的时间函数进行处理,但不完全都是这样。
猜你喜欢
- 永远不要相信用户输入的内容具有适当的大小或者包含适当的字符。在使用其做出决策之前应该始终对用户输入进行验证。最佳的选择是创建一个
- 算法是计算机科学中一个重要的研究方向,是解决复杂问题的关键。在计算机世界中,算法无处不在。数据库是存储数据和执行大批量计算的场所,在数据库中
- 问:怎样才能指定MySQL只监听某个特定地址?答:比较常见的办法是,在my.cnf之mysqld节,添加bind-address=127.0
- 阅读上一章:Chapter 14 图片替换Chapter 15 为<body>指定样式把内容与显示效果分开设定的好处之一就是灵活
- 任何东西只要跟Google有关就总能给我们带来点儿惊喜,2008年9月2日发布的Google Chrome浏览器也不例外。Google Ch
- 在windows+iis服务器上运行asp程序可能会出现数据库无法更新的情况,具体错误信息可能为: 1、Microsoft JET Data
- <%'asp事务处理。'测试数据库为sql server,服务器为本机,数据库名为test,表名为a,两个字段id(i
- MySQL出错代码列表:1005:创建表失败1006:创建数据库失败1007:数据库已存在,创建数据库失败1008:数据库不存在,删除数据库
- 假设在搜索框search中输入:“asp 编程” 先得到输入框中的内容:search=request("search")
- 相信用过Gmail的人都知道Gmail有一个草稿自动保存的功能,每过一段时间,Gmail都会自动保存邮件草稿,这样在一些突 * 况下就能快速地
- 在url网址中,我们经常使用server.urlencode来对网址进行编码,特别是遇到网址中有中文字符的时候,如<a href=&q
- 第一种,也是我最常用的,第一帧里加上这个比较灵活,想要自定义加入菜单,只要定义drMenu这个对象就可以了var drMenu&n
- 方法一 <%dim total(7,3) total(1,0)="ASP之家"&n
- [编者注:]提起数据库,第一个想到的公司,一般都会是Oracle(即甲骨文公司)。Oracle在数据库领域一直处于领先地位。Oracle关系
- 个人觉得还是不要使用中文作为文件名的好,虽然我们用的语言是中文,毕竟中文容易出现问题,兼容性不好。用Dreamweaver制作网页时,如果插
- 很早就在这里看到过解决方案,与嗷嗷讨论后发现这个方案还是很可靠的。当然,唯一的缺点就是每一个属性都要去Hack,但我在很多实践中,只用‘修正
- 同事在准备新老系统的切换,清空一个表的时候往往发现这个表的主键被另一个表用做外键,而系统里有太多层次的引用.所以清起来相当麻烦用下面这个脚本
- mysql数据库没有增量备份的机制,当数据量太大的时候备份是一个很大的问题。还好mysql数据库提供了一种主从备份的机制,其实就是把主数据库
- 曾经有许多创造性的logo设计案例,logo设计资源和logo设计指导张贴在互联网的各个角落。这些帮助会为你的logo设计创造一个功能强大的
- 代码如下:using System; using System.Data; using System.Configuration