MySQL 字段数值范围

MySQL 字段数值范围,第1张

int 代表32位整数,占用4个字节取值范围在(-2147483648~+2147483647)可以看到int类型能接受最大的数值是2147483647(这个数值只有10位),这个11并不是代表他的位数,而是代表显示的位数,在mysql中有个zerofill,在建表的时候指定了0的话,就是说当不足11位的时候会用0来补全11位,默认的时候是以空格补全!比如int(4)的一个字段,你插入12,如果设定了zerofill的话,最终的结果是0012,否则的话就是12+空格。int(11)也是一样的道理!

满意请采纳

不会起作用的

CHECK子句会被分析,但是会被忽略。请参见13.1.5节,“CREATE TABLE语法”。接受这些子句但又忽略子句的原因是为了提高兼容性,以便更容易地从其它sql服务器中导入代码,并运行应用程序,创建带参考数据的表。请参见1.8.5节,“Mysql与标准sql的差别”。

你可以变通实现啊 用enum字段类型

mysql>create table test(id int ,no enum('0','1'))

insert into test alues (5,5);

select * from test

ERROR 1265 (01000): Data truncated for column 'no' at row 1

mysql5.0版本以前,varchar()最大能定义255。5.0以上版本支百持65535字节长度,utf8编码下最多支持21843个字符度(不为空)。mysql5.0版本以前,varchar(2000)不正确,5.0以上版本正确。

如果某个数据列里包含许多重复的值,就算为它建立了索引也不会有很好的效果。比如说,如果某个数据列里包含的净是些诸如 “0/1” 或 “Y/N” 等值,就没有必要为它创建一个索引。

扩展资料:

与InnoDB数据表相比,在 InnoDB 数据表上,索引对 InnoDB 数据表的重要性要大得多。在 InnoDB 数据表上,索引不仅会在搜索数据记录时发挥作用,还是数据行级锁定机制的基础。“数据行级锁定”的意思是指在事务 *** 作的执行过程中锁定正在被处理的个别记录。

不让其他用户进行访问。这种锁定将影响到(但不限于)SELECT、LOCKINSHAREMODE、SELECT、FORUPDATE 命令以及 INSERT、UPDATE 和 DELETE 命令。

出于效率方面的考虑,InnoDB 数据表的数据行级锁定实际发生在它们的索引上,而不是数据表自身上。显然,数据行级锁定机制只有在有关的数据表有一个合适的索引可供锁定的时候才能发挥效力。

参考资料来源:百度百科-mySQL


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/8376390.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-15
下一篇 2023-04-15

发表评论

登录后才能评论

评论列表(0条)

保存