数据类型 | 占用空间 | 取值范围(有符号) | 取值范围(无符号) | 小整数型 |
tinynt | 1字节 | -128~127 | 0~255 | 大整数型 |
smallint | 2字节 | -32768~32767 | 0~65535 | 大整数型 |
MEDIUMINT | 3字节 | ±8388608 | 0~16777215 | 大整数型 |
INT或INTEGER | 4字节 | ±2147483648 | 0~4294967295 | 大整数型 |
BIGINT | 8字节 | ±9223372036854775808 | 0~18446744073709551615 | 极大整数型 |
其中int是使用最广泛的,本文只针对整数型的数据类型取值范围做了一个整理.如果需要查看完整的数据类型比较,请参阅:mysql的数据类型一文.
属性:
unsigned:无符号,列的值从0开始,不为负
zerofill:固定宽度的数字,用0填充至固定宽度,例如学号1会变成0001 注意:zerofill属性默认决定列为unsigned属性(不为负)
使用例子:
create table tablename( 列1 TINYINT unsigned 默认值, //整数类默认是带负号的,如果数值没有符号,可以设置为unsigned 列2 TINYINT(5) zerofill 默认值 // 括号内5意思代表自动补充0后的字符宽度,例如学号1,则显示00001 性别 enum('男','女') // 括号内5意思代表自动补充0后的字符宽度,例如学号1,则显示00001 )
使用小技巧:
存放时间:虽然mysql有存放时间的数据类型,但是我们发现很多cms系统也好,大型网站也好.大多数都是使用的int来存放.使用10位的时间戳来存放时间不管是排序的效率,还是计算时间间隔时写程序代码都是非常方便的.只是看起来不那么直观.需要展示的时候转换一下即可.因为转换起来非常方便!
存放ip地址:可以把ip地址转换为整数型来存放.一般情况下没这个必要.因为看起来不直观.一个char也占不了多少空间,但是对于非常庞大的ip数据来说.能优化一点是一点.
存性别的数据类型选用整数型要比字符串效率高,而且节省空间.一个 tinynt足够用
相关推荐
C# 的数据类型 和取值范围值类型变量可以直接分配给一个值。它们是从类 System.ValueType 中派生的。值类型直接包含数据。比如 int、char、float,它们分别存储数字、字符、浮点数。当您声明一个 int 类
20亿行测试 sqlite最多可以容纳多少行数据 以及插入速度 每个文件最大多大?据说 数据库文件最大支持 281 T每个数据库由一个或多个数据页组成,一个数据库内的所有数据页大小都相同,但是不同的数据库可以使用不同的数据页大小,范围从 512 到 65536 字节。从 sqlit
php查看mysql表大小 表行数 表多余 表自增id 数据表最大id查看自增id $sql="select Auto_increment from information_schema.tables where TABLE_SCHEMA='{$数据库
mysql数据类型mysql创建表语句格式:create table tablename(列1 int unsigned,//unsigned意思是无符号。不为负。列2 列类型 列属性 默认值,列3 列类型
mysql效率研究(一):int(5)与 int(10) 与 int(11) 的区别/*int(5)与 int(10) 与 int(11) 的区别*/ //首先创建 三个表 分别是 in5,in10,in11 都只有一个字段 $sql="create table
mysql取随机数 随机范围之间的随机数例如:取随机 2000-5000之间的随机数:UPDATE zbp_post SET log_ViewNums = FLOOR(2000 + RAND() * (5000-2000+1))扩展:php
mysql sqlite取表内最大id语句 取最新插入id 取表行数取最大ID方法一:select MAX(id) from 表名 方法二:select * from sqlite_sequence where name='表名' 以上两种方法 500
mysql最大行数限制以下内容仅是猜测:一般习惯每建一个表 第一个字段都是id,且是自增的所以感觉可能会取决于自增id的数据类型一般自增id都用int 默认就是20多亿行 如果加了 unsigned 就是40多亿行 超过
mysql sqlite 删除旧数据 只保留最新的100条完整语句:delete from _sql执行记录 where id in (select id from _sql执行记录 order by id desc limit 100,100000)del
mysql迁移,mysql数据导出,数据导入,mysql备份 mysql5.7数据导入到mysql8.0数据导出/数据备份mysqldump -u 用户名 -p 数据库名 > 数据库备份文件.sql执行后,它会要求你输入密码。输入后即可导出成功如果数据比较大,可以考虑添加一些适合的选项 例如 --