【问题标题】:why mysql conver bool into tinyint(1) instead it should be bool into mysql table [duplicate]为什么mysql将bool转换为tinyint(1)而不是bool转换为mysql表[重复]
【发布时间】:2015-04-23 09:24:32
【问题描述】:

当我在创建表时使用 type as bool 时,它直接转换为 tinyint (1) ,我不知道为什么 mysql 将其转换为 tinyint 而不是数据类型 bool ?

【问题讨论】:

标签: php mysql


【解决方案1】:

BOOL 相当于 TINYINT(1)。 TINYINT 使用最小的整数数据类型。

所以每当您尝试使用 boolean 数据类型创建表时,它会自动转换为 inttype

e.g.
CREATE TABLE IF NOT EXISTS `test` 
(
  `p_id` int(11) NOT NULL,
  `p_name` varchar(25) NOT NULL,
  `p_description` varchar(100) NOT NULL,
  `p_status` bool NOT NULL DEFAULT TRUE
) 

谢谢, 阿米特

【讨论】:

    【解决方案2】:

    TINYINT 使用最小的整数数据类型。

    BOOL 相当于 TINYINT(1)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-02-06
      • 1970-01-01
      • 2014-11-02
      • 2013-08-09
      • 2016-10-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多