boolean类型

MYSQL保存BOOLEAN值时用1代表TRUE,0代表FALSE,boolean在MySQL里的类型为tinyint(1),

MySQL里有四个常量:true,false,TRUE,FALSE,它们分别代表1,0,1,0,

mysql> select true,false,TRUE,FALSE;

+------+-------+------+-------+

| TRUE | FALSE | TRUE | FALSE |

+------+-------+------+-------+

|    1 |     0 |    1 |     0 |

+------+-------+------+-------+

可以如下插入boolean值:insert into [xxxx(xx)] values(true),当然也可以values(1);

举例如下:

mysql> alter table test add isOk boolean;

Query OK

mysql> desc test;

+-------+-------------+------+-----+---------+----------------+

| Field | Type        | Null | Key | Default | Extra          |

+-------+-------------+------+-----+---------+----------------+

| id    | int(11)     | NO   | PRI | NULL    | auto_increment |

| isOk  | tinyint(1)  | YES  |     | NULL    |                |

+-------+-------------+------+-----+---------+----------------+

mysql> insert into test(isOk) values(true);

Query OK

mysql> select isOk from test ;

+------+

| isOk |

+------+

|    1 |

+------+

=================

MySQL没有boolean类型。这也是比较奇怪的现象。例:

create table xs

(

id int primary key,

bl boolean

)

这样是可以创建成功,但查看一下建表后的语句,就会发现,mysql把它替换成tinyint(1)。也就是说mysql把boolean=tinyInt了,但POJO类要定义成什么类型呢?

因为惯性思维,在java类中也把它定义成type。然后在Struts中使用标签。这就产生一个严重的问题了。是boolean,而POJO去定义成byte。这样数据永远也无法提交,被struts的intercept拦截掉了。解决办法是在POJO类中定义成boolean,在mysql中定义成tinyint(1)。

------

TINYINT(1) or ENUM( 'true' , 'false')

-------

mysql boolean 和bool_关于 MySQL 的 boolean 和 tinyint(1)相关推荐

  1. mybatis mysql方言_MyBatis 方言支持 - Mysql to 华为高斯数据库(gaussdb)

    1.spring-config-mybatis.xml文件加入方言支持(只列出必要字段) 配置说明:key:数据库类型-mybatis可以根据数据源类型自动识别 value:mapper xml文件中 ...

  2. php mysql不大小写吗,PHP+MYSQL大小写有关问题

    [PHP] 一.大小写敏感 1.变量名区分大小写 所有变量均区分大小写,包括普通变量以及$_GET,$_POST,$_REQUEST,$_COOKIE,$_SESSION,$GLOBALS,$_SER ...

  3. boolean 默认_MySQL数据类型测试:BOOLEAN、TINYINT测试数据总结(第八节)

    前面几节Amy给大家分享了STE集合类型和枚举类型ENUM的测试数据,还没来得及看到的读者可以点击这里查看往期文章.之前看到一些平台上很多人咨询mysql是否提供布尔类型的问题.MySQL数据库确实提 ...

  4. node mysql崩溃_为什么这个mysql错误会导致nodejs崩溃而不是去catch函数?

    事实上,@Quentine很接近正确的事情... 最后,我创建了自己的包装函数,用适当的promise处理来创建connection+call execute. import mysql = requ ...

  5. mybatis mysql merge_Spring Boot + Mybatis 整合Mysql ,SQLServer数据源以及整合druid,动态调整数据源切换。...

    pom.xml依赖 org.springframework.boot spring-boot-starter-web org.mybatis.spring.boot mybatis-spring-bo ...

  6. mysql 多表连接技巧_【Mysql进阶技巧(1)】 MySQL的多表关联与自连接

    自连接 测试数据准备 CREATE TABLE `t2` ( `id` int(11) NOT NULL, `gid` char(1) DEFAULT NULL, `col1` int(11) DEF ...

  7. python 自动化 mysql 部署_Python自动化管理Mysql数据库教程

    Python自动化管理Mysql数据库教程 发布时间:2020-05-28 11:14:31 来源:51CTO 阅读:238 作者:三月 下面一起来了解下Python自动化管理Mysql数据库教程,相 ...

  8. dbt3 mysql create db_DB开发之mysql

    1. MySQL 4.x版本及以上版本提供了全文检索支持,但是表的存储引擎类型必须为MyISAM,以下是建表SQL,注意其中显式设置了存储引擎类型 CREATE TABLE articles ( id ...

  9. mysql fulltext 分词_在mysql中使用全文索引fulltext|mysql,全文索引,fulltext

    全文检索在 MySQL 中就是一个 FULLTEXT 类型索引.FULLTEXT 索引用于   MyISAM 表,可以在 CREATE TABLE 时或之后使用 ALTER TABLE 或 CREAT ...

最新文章

  1. 【推荐】一下令人惊艳的的网站,绝对会让你爱上历史
  2. linux cer证书转为jks,常见SSL证书格式介绍以及SSL证书格式转化方法
  3. css --- 让不同的浏览器加载不同的CSS
  4. 经典ICP算法的问题
  5. 【C语言进阶深度学习记录】二十五 指针与数组的本质分析二
  6. 机器学习分类问题中_训练数据类别不均衡怎么解决
  7. PMC 任命Edward Sharp为首席战略及技术官
  8. linux系统编译fortran,在Linux安装Fortran编译器
  9. 基于OpenVINO的端到端DL网络-初步接触OpenVINO提供的例子(win+vs)
  10. oracle 错误 1013,ORA-03113错误解决一例
  11. 用图形化文件对比工具kdiff3解决git rebase冲突
  12. camera 高动态范围(High-Dynamic Range,简称HDR)
  13. localStorage的使用方法
  14. graphpad prism怎么添加图例_Graphpad Prism 绘制散点图详细图解
  15. SELECT TOP 100 PERCENT
  16. 如何让梯形变成平行四边形_把梯形转化成平行四边形.ppt
  17. Excel如何批量删除批注
  18. 小知识·typec耳机原理
  19. SLAM——ORB-SLAM3代码分析(七)Converter
  20. python对numpy数组求导_NumPy数组计算——python

热门文章

  1. java框架mybatis配置文件总结一
  2. Project查看资源分配情况
  3. Jquery mobile 解决IOS9selectli闪退问题
  4. java 高级编程进阶_JAVA高级编程之hibernate进阶学习
  5. php中如何存储多个文本框,php-如何将每个字符的文本框拆分为多个子文本框
  6. 从零开始自学c语言,从零开始学习C语言
  7. java 嵌套调用_Java嵌套类的使用
  8. inventor扳手制作视频_弱电工程视频监控系统施工方案,可作施工组织设计
  9. 控制台应用和空项目有什么区别_在公司做的项目和自己在学校做的有什么区别?...
  10. android界面设计字体大小,Andoird用户界面设计上手指南:设置字体大小