Mysql中int(2)和int(10)的区别

int(N)中的N不是限制字段取值范围的,int的取值范围是固定的(0至4294967295)或(-2147483648至2147483647)

那么N这个值是为了在字段中的值不够时补零的,但是必须含有zerofill,例如

create table `type`(`id` int(8) zerofill unsigned NOT NULL,primary key(`id`))engine=InnoDB default charset=utf8;

如果插入8888,查看的数据应该为00008888,如果插入1111111111111,查看的数据应该为4294967295

如果int不指定N,则默认为10,unsigned属性决定值是否有符号,如果有这个属性,那么取值范围就为(0至4294967295)

时间: 2024-11-05 16:04:55

Mysql中int(2)和int(10)的区别的相关文章

mysql中的where和having子句的区别

mysql中的where和having子句的区别 having的用法 having字句可以让我们筛选成组后的各种数据,where字句在聚合前先筛选记录,也就是说作用在group by和having字句前.而 having子句在聚合后对组记录进行筛选. SQL实例: 一.显示每个地区的总人口数和总面积. SELECT region, SUM(population), SUM(area) FROM bbc GROUP BY region 先以region把返回记录分成多个组,这就是GROUP BY的

mysql中 drop、truncate和delete的区别

mysql中drop.truncate和delete的区别 (1)DELETE语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存以便进行进行回滚操作. TRUNCATE TABLE 则一次性地从表中删除所有的数据并不把单独的删除操作记录记入日志保存,删除行是不能恢复的.并且在删除的过程中不会激活与表有关的删除触发器.执行速度快. (2)表和索引所占空间. 当表被TRUNCATE 后,这个表和索引所占用的空间会恢复到初始大小, DELETE操作不会减少表或索引

MySQL中create table as 与like的区别分析

这篇文章主要介绍了MySQL中create table as 与like的区别,结合实例分析了二者在使用中的具体区别与主要用途,需要的朋友可以参考下,具体如下: 对于mysql的复制相同表结构方法,有create table as 和create table like 两种,区别是什么呢? 代码如下: create table t2 as select * from t1 where 1=2; as创建出来的t2表(新表)缺少t1表(源表)的索引信息,只有表结构相同,没有索引. 代码如下: cr

Mysql中校对集utf8_unicode_ci与utf8_general_ci的区别

一直对utf8_unicode_ci与utf8_general_ci这2个校对集很迷惑,今天查了手册有了点眉目.不过对中文字符集来说采用utf8_unicode_ci与utf8_general_ci时有何区别还是不清楚? 下面摘录一下Mysql 5.1中文手册中关于utf8_unicode_ci与utf8_general_ci的说明: 当前,utf8_unicode_ci校对规则仅部分支持Unicode校对规则算法.一些字符还是不能支持.并且,不能完全支持组合的记号.这主要影响越南和俄罗斯的一些

mysql中utf8_bin、utf8_general_ci、utf8_general_cs编码区别

在mysql中存在着各种utf8编码格式,如下表: 1)utf8_bin 2)utf8_general_ci 3)utf8_general_cs utf8_bin将字符串中的每一个字符用二进制数据存储,区分大小写. utf8_genera_ci不区分大小写,ci为case insensitive的缩写,即大小写不敏感. utf8_general_cs区分大小写,cs为case sensitive的缩写,即大小写敏感. 现在假设执行如下命令: create table test_bin ( nam

MySql中测试GUID 与Int自增主键 性能对比 总结适用场景【转】

一. 创建以下三个数据表: int 主键自增表, guid主键表, 关联以上两个表的关系表tbl_test_relation CREATE TABLE `tbl_test_int` (    `id` INT(11) NOT NULL AUTO_INCREMENT,    `name` VARCHAR(50) NULL DEFAULT NULL,    `comment` VARCHAR(100) NULL DEFAULT NULL,    PRIMARY KEY (`id`))COMMENT=

mysql中engine=innodb和engine=myisam的区别

MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持. MyISAM 类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持. InnoDB 提供事务支持以及外键等高级数据库功能. 这样就可以根据数据表不同的用处是用不同的存储类型. 另外,MyISAM类型的二进制数据文件,可以在不同操作系统中迁移. 也就是可以直接从 Windows 系统拷贝到 linux 系统中使用. 修改: ALTER TABLE tablename ENGINE = MyISAM : MyI

Mysql 中 char 、varchar 、text的区别

首先它们的存储方式和数据的检索方式都不一样.数据的检索效率是:char > varchar > text 空间占用方面,就要具体情况具体分析了. char:存储定长数据很方便,CHAR字段上的索引效率级高,必须在括号里定义长度,可以有默认值,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间(自动用空格填充),且在检索的时候后面的空格会隐藏掉,所以检索出来的数据需要记得用什么trim之类的函数去过滤空格. varchar:存储变长数据,但存储效率没有C

MySQL中char、varchar和text的区别

它们的存储方式和数据的检索方式都不一样.数据的检索效率是:char > varchar > text空间占用方面,就要具体情况具体分析了. char:存储定长数据很方便,CHAR字段上的索引效率级高,必须在括号里定义长度,可以有默认值,比如定义char(10),那么不论你存储的数据是否达到了10个字节,都要占去10个字节的空间(自动用空格填充),且在检索的时候后面的空格会隐藏掉,所以检索出来的数据需要记得用什么trim之类的函数去过滤空格. varchar:存储变长数据,但存储效率没有CHAR

Mysql中DELETE,TRUNCATE,DROP的区别

1. delete:    delete from table_name;          or         delete from table_name where column = ?; 删除表中数据,但是不会删除表结构,删除的时候是一行一行删,效率较低,可用来删除单条数据. 2. truncate: truncate from table_name; 删除表中数据,不删除表结构,相比于delete,效率更高,它所使用的系统和事物日志资源少. //对于delete与truncate,最