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

BOOLEAN或TINYINT混乱

司空健
2023-03-14
问题内容

我正在为一个站点设计一个数据库,在该站点中,我需要使用布尔日期类型来仅html" target="_blank">存储2个状态,即true或false。我正在使用MySQL。
在使用phpMyAdmin设计数据库时,我发现我同时拥有BOOLEAN数据类型和TINYINT数据类型。
我浏览了不同的文章,有人说TINYINT与BOOLEAN相同,没有区别。有人说BOOLEAN在MySQL中转换为TINYINT。

我的问题是,如果两者相同,为什么会有两个?应该只有其中之一。

这是我阅读的文章的参考:
http :
//www.careerride.com/MySQL-BOOL-TINYINT-BIT.aspx

http://dev.mysql.com/doc/refman/5.5/en/numeric-type
-overview.html


问题答案:

MySQL没有内部布尔数据类型。它使用最小的整数数据类型-TINYINT。

BOOLEAN和BOOL是TINYINT(1)的等效项,因为它们是同义词。

尝试创建此表-

CREATE TABLE table1 (
  column1 BOOLEAN DEFAULT NULL
);

然后运行SHOW CREATE TABLE,您将获得以下输出-

CREATE TABLE `table1` (
  `column1` tinyint(1) DEFAULT NULL
)


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

  • 问题内容: 我经常在一些表中需要存储一个可以为1或0(true或false,等等)的标志。 我以前用过TINYINT。 我应该改用BIT(1)吗?为什么或者为什么不? 问题答案: 如果您使用的是更高版本的mysql版本,那么5.0.3不再是它的别名,但是如果您创建了一个列,它还是会得到。 因此使用或等于,如果表只有1列,则不会有任何好处。 但是,如果您有更多对/错列,我建议您使用,因为将位列的每个

  • 描述 (Description) java.lang.Boolean.valueOf(boolean b)返回表示指定布尔值的Boolean实例。 如果指定的布尔值为true,则此方法返回Boolean.TRUE; 如果为false,则此方法返回Boolean.FALSE。 如果不需要新的Boolean实例,则通常应优先使用此方法,而不是构造函数Boolean(boolean),因为此方法可能会产

  • Boolean对象表示两个值,“true”或“false”。 如果省略value参数或者为0,-0,null,false, NaN, undefined或空字符串(“”),则对象的初始值为false。 语法 (Syntax) 使用以下语法创建boolean对象。 var val = new Boolean(value); 布尔属性 以下是Boolean对象的属性列表 - Sr.No 财产和描述

  • Boolean对象表示两个值, "true"或"false" 。 如果省略value参数或者为0,-0,null,false,NaN,undefined或空字符串(“”),则对象的初始值为false。 使用以下语法创建boolean object 。 var val = new Boolean(value); 布尔属性 以下是Boolean对象的属性列表。 Sr.No 财产和描述 1 const

  • Represents true or false values.