首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么mysql将bool转换为tinyint(1),而应该将bool转换为mysql表

问为什么mysql将bool转换为tinyint(1),而应该将bool转换为mysql表
EN

Stack Overflow用户
提问于 2015-04-23 09:24:32
回答 2查看 127关注 0票数 6

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

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-23 09:30:48

BOOL是TINYINT(1)的等价物。TINYINT使用最小的整数数据类型。

因此,每当您尝试使用布尔型数据类型创建表时,它都会自动转换为inttype。

代码语言:javascript
复制
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
) 

谢谢,阿米特

票数 3
EN

Stack Overflow用户

发布于 2015-04-23 09:26:08

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

BOOL是TINYINT(1)的等价物。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29819157

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档