由于MySQL似乎没有任何“布尔”数据类型,你滥用'哪种数据类型'来存储MySQL中的真/假信息?

特别是在写入和读取PHP脚本的上下文中。

随着时间的推移,我使用并看到了几种方法:

tinyint,包含值0/1的varchar字段,

包含字符串'0'/'1'或'true'/'false'的varchar字段

最后枚举包含两个选项'true'/'false'的字段。

以上都不是最佳的。 我更倾向于使用tinyint 0/1变体,因为PHP中的自动类型转换非常简单地给出了布尔值。

那你使用哪种数据类型? 有没有为布尔值设计的类型,我忽略了? 您是否看到使用某种类型的优点/缺点?

#1楼

我厌倦了尝试获得零,NULLS,并且''准确地围绕PHP,MySql和POST值的循环,所以我只使用'是'和'否'。

这种方法完美无缺,不需要特别的处理,这种处理不明显且容易做到。

#2楼

参考Mysql中的这个链接布尔数据类型 ,根据应用程序的用法,如果只想存储0或1,则bit(1)是更好的选择。

#3楼

我使用TINYINT(1)来在Mysql中存储布尔值。

我不知道使用这个是否有任何好处...但如果我没有错,mysql可以存储boolean(BOOL)并将其存储为tinyint(1)

#4楼

对于MySQL 5.0.3及更高版本,您可以使用BIT 。 手册说:

从MySQL 5.0.3开始,BIT数据类型用于存储位字段值。 一种BIT(M)允许存储M位值。 M的范围为1到64。

否则,根据MySQL手册,你可以使用bool和boolean,它们是tinyint (1)的别名:

Bool,Boolean:这些类型是TINYINT (1)的同义词。 值为零被视为false。 非零值被认为是真实的。

MySQL还声明:

我们打算在未来的MySQL版本中按照标准SQL实现完整的布尔类型处理。

#5楼

BOOL和BOOLEAN是TINYINT(1)同义词。 零是false ,其他任何事都是true 。 更多信息在这里 。

mysql可以存布尔_哪个MySQL数据类型用于存储布尔值相关推荐

  1. mysql如何存储布尔值_用于存储布尔值的MySQL数据类型

    用于存储布尔值的MySQL数据类型 由于MySQL似乎没有任何"布尔"数据类型,您在"滥用"哪种数据类型来存储MySQL中的真/假信息? 特别是在写入和读取PH ...

  2. mysql经度纬度类型_在MySQL数据库中存储纬度/经度时使用的理想数据类型是什么?...

    Gajus.. 41 取决于您需要的精度. Datatype Bytes resolution ------------------ ----- --------------------------- ...

  3. 深入浅出mysql唐汉名_深入浅出MySQL++数据库开发、优化与管理维护+第2版+唐汉明 -- 存储引擎 - 数据类型 - 字符集和校验规则 -...

    create schema deepInMySql; use deepInMySql; -- 查看当前默认存储引擎 show variables like '%table_type%'; -- 查看当 ...

  4. mysql 中有什么命令_常用mysql命令大全

    常用的MySQL命令大全 连接MySQL格式: mysql -h主机地址 -u用户名 -p用户密码 1.例1:连接到本机上的MYSQL. 首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命 ...

  5. mysql数据库不小于_小于mysql

    mysql启用hugepage 1 hugepage在linux 2.6以后的内核才支持,mysql中只有innodb引擎才支持,hugepage作用: 1.减少内存置换 2.减少TLB miss次数 ...

  6. mysql数据库基本语法_[数据库]MySQL 基本语法

    [数据库]MySQL 基本语法 0 2018-05-31 05:00:07 1.说明: 创建默认数据库 create database 库名; 2.说明: 创建指定字符编码的数据库 create da ...

  7. mysql 基于gtid复制_深入MySQL复制(二):基于GTID复制

    相比传统的MySQL复制,gtid复制无论是配置还是维护都要轻松的多.本文对gtid复制稍作介绍. 1.gtid基本概念 传统的基于binlog position复制的方式有个严重的缺点:如果slav ...

  8. mysql报196271错误_超过mysql最大连接的异常

    超过mysql最大连接的错误 出现错误: com.mysql.jdbc.CommunicationsException: The driver was unable to create a conne ...

  9. mysql 数据库安装命令_数据库mysql安装及最基本命令

    1.安装官网:http://www.mysql.com即可下载,百度经验贴见:如何在官网上下载可安装版的MySQL数据库 + my.ini文件.(文件必须安在C盘的根目录下) 命令:在命令提示符中,以 ...

最新文章

  1. 自动化对就业没有影响?看看这张图再说
  2. 带限制条件的最大子矩阵 - 牛客
  3. boost::multiprecision模块logged_adaptor相关的测试程序
  4. 【WPF】DataGrid多表头的样式设计
  5. 推荐系统遇上深度学习(十一)--神经协同过滤NCF原理及实战
  6. php redis 队列抢红包_redis 队列操作的例子(php)
  7. 快速合并所有txt文档
  8. Android开发常用的模拟器
  9. office 2016 官方完整版
  10. 服务器虚拟内存设置在什么盘,虚拟内存设置在哪个磁盘呢
  11. qtablewidget 添加一行
  12. Dejal Simon for Mac(服务器监控程序)
  13. 我这些年对游戏外挂辅助开发的一些心得和体会
  14. 网络共享里的计算机无法打开,局域网共享文件夹打不开怎么办
  15. 高并发系统设计:消息队列的三大作用:削峰填谷、异步处理、模块解耦
  16. cesium底图切换
  17. P2P通信中的NAT/FW穿越
  18. 学术期刊划分(教你认识SCI、EI、SSCI、IEEE、CSSCI...)
  19. 考研逻辑-逻辑4主讲人:王超-2020-05-16
  20. 《权威指南》笔记 -- 8.3 函数的实参和形参

热门文章

  1. MicroProfile 2.2 BOM导入支持
  2. 面向切面编程应用_应用面向方面的编程
  3. java jpa 规范_Java:在JPA中使用规范模式
  4. 无状态会话的ejb_Java EE状态会话Bean(EJB)示例
  5. 还有更多REST技巧
  6. 通过微调JVM Garbage Collector减少Java IDE滞后
  7. JAX-RS 2.x与Spring MVC:返回对象列表的XML表示
  8. Thymeleaf与Spring集成(第2部分)
  9. Java 8中的instanceof运算符和访客模式替换
  10. Spring JMS,消息自动转换,JMS模板