当前位置: 首页 > 面试题库 >

MySQL布尔值“ tinyint(1)”最多可保存127个值?

金和雅
2023-03-14
问题内容

我想为库存中的物品设置一个真/假字段。

我想将其设置为布尔值(将其转换为tinyint(1)),库存中为1,无库存中为0。

我从供应商那里获取饲料,所以我对自己说:“如果他们通过了多少库存,该怎么办?”

所以我想知道如果我插入一个大于1的数字会发生什么。我假设它将默认为1。

令我惊讶的是,它将允许我保留最大为127的任何数字,超过默​​认值的则为127。

谁能解释为什么?


问题答案:

带符号的TINYINT数据类型可以存储-128到127之间的整数值。

但是,TINYINT(1)不会更改其可以存储的最小值或最大值。它只是说当该类型的值作为输出打印时仅 显示 一位数字。



 类似资料:
  • 问题内容: 哪种列类型最适合在MySQL数据库中使用布尔值?我用,但我的同事用。 问题答案: 这些数据类型是同义词。

  • 我正在尝试将一个PostgreSQL表迁移到一个包含所有数据的MySQL,但由于有两列,我无法迁移。这些列在Postgresql表中作为布尔值,并且这些列中的值为TRUE或FALSE(看起来像字符串)。我在MySQL中创建了一个布尔列,但它不接受真/假数据。对于这些真/假值,我应该使用什么来代替布尔值?我尝试了tinyint(4),但它不起作用(我必须迁移数据,因为它是真的或假的,而不是t/f或1

  • 问题内容: 这是我的JPA2 / Hibernate定义: 在MySql中,此列解析为bit(1)数据类型- 不适用于我。对于遗留问题,我需要将布尔值映射到tinyint而不是一点点。但是我看不到更改默认数据类型的可能性。有没有? 问题答案: 试试吧。由于某种原因,它没有声明的简短类型名称,因此您必须使用: 这确实映射为INTEGER类型,但可能与TINYINT一起正常工作。 UPDATE:不会

  • 问题内容: 这个问题已经在这里有了答案 : 7年前关闭。 可能重复: MySql:Tinyint(2)vs tinyint(1)-哪个不同? 之间有什么区别? 问题答案: TinyINT(M)的范围始终是-128 .. + 127有符号或0..255无符号。M是显示宽度。 M表示整数类型的最大显示宽度。最大显示宽度为255。显示宽度与类型可以包含的值的范围无关,如第11.2节“数字类型”中所述。对

  • 我有一个方法,我有一个问题。下面的第二个方法promptForPinNumber()调用第一个方法canConvertToInteger(),然后根据布尔变量pinValid的值是true还是false执行操作。 当我单独执行方法canConvertToIntger()时,它运行良好,并且pinValid的值是正确的。 当我执行promptForPinNumber()并输入引发和异常的字符串时,p

  • 问题内容: 我在MySQL表(TINYINT(1))中具有BOOLEAN类型,并且尝试映射实体中的布尔字段,但这会生成异常: 我将实体中的字段更改为字节并进行了相应的更改,因此它的作用是布尔值,我得到: 我尝试在字段上使用注释: 但我得到: 问题答案: 从我在这里读到的内容: org.hibernate.HibernateException:maegul.users中列admin的列类型错误。找到