MySQL中boolean类型设置(想法分享)

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MySQL中boolean类型设置(想法分享)

本篇文章小结一下关于数据库设计关于字段设计的想法

前端常常可以看见一个按钮启用,不启用,如果这个属性就两个情况的话,通常字段就是0,1等设计

在这里插入图片描述

在日常数据库建表中常有:启用或者不启用这样的字段

关于数据库这个字段的类型通常有几种设计方式,比如int,char,tinyint都行,根据实际情况定夺


你一定思考过数据库中的ture 或者false对应的类型代表什么吧?

boolean在MySQL里的类型为tinyint(1)

MYSQL保存BOOLEAN值时用1代表TRUE,0代表FALSE,

在这里插入图片描述

java后端取出数据的时候才会自动转化成true(数据库中的1)和false(数据库中的0)

mysql数据库的布尔型对应的数据类型为tinyint,存入的数据,0代表false,1代表true

如上述启用,不启用的情况我们可以用这个类型设计对应字段


拓展一下相关简单知识点

关于前端接到true 或者false想显示0,1的问题,主要针对你的选择按钮是0,1

如果是Boolean值,true和false将分别转换为1 和 0。
比如接到的是status

let a =Number(status)

同样如果后台传来0或者1,想在前端显示ture或者false的情况使用Boolean即可

//这里你使用Boolean类型的值转换一下即可
  console.log(Boolean(0));//=>false

当然在如果类型情况比较多的时候你可以换成其它的对应字段

应用场景,如帖子的发布状态1.发布 2.已删除 3.待发布等
在这里插入图片描述

拓展想法:关于删除这里设计,最初学习mysql的时候学到的删除都是物理删除真的删除了,但是实际场景中大多都是逻辑删除;

比如你设计一个字段代表是否删除,0代表不删除,1代表删除,那么即使操作失误了,我们也可以从数据库中还原;

正如我上面做帖子相关的开发,管理员可以拉黑用户的帖子也可以解除拉黑,这里我们查询出帖子列表的条件就是where status = 1 ,如果是选择后台拉黑用户帖子,将这个帖子状态设置为3即可实现帖子拉黑(逻辑删除),前端帖子列表也看不到这个帖子了。


The best investment is to invest in yourself.

愿你们奔赴在自己的热爱里!

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
26天前
|
机器学习/深度学习 关系型数据库 MySQL
mysql bit对gorm使用何种类型?
在GORM中使用MySQL的BIT类型时,通常使用 `bool`类型来处理BIT(1),使用 `[]byte`类型来处理BIT(N)(N > 1)。通过正确的类型映射和位操作,可以高效地处理位字段数据。确保在定义结构体字段时,明确指定字段类型,以便GORM能够正确地处理数据库交互。
33 18
|
2月前
|
存储 关系型数据库 MySQL
mysql怎么查询longblob类型数据的大小
通过本文的介绍,希望您能深入理解如何查询MySQL中 `LONG BLOB`类型数据的大小,并结合优化技术提升查询性能,以满足实际业务需求。
169 6
|
3月前
|
分布式计算 关系型数据库 MySQL
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型 图像处理 光通信 分布式计算 算法语言 信息技术 计算机应用
79 8
|
3月前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
221 3
|
3月前
|
关系型数据库 MySQL Linux
在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。
本文介绍了在 CentOS 7 中通过编译源码方式安装 MySQL 数据库的详细步骤,包括准备工作、下载源码、编译安装、配置 MySQL 服务、登录设置等。同时,文章还对比了编译源码安装与使用 RPM 包安装的优缺点,帮助读者根据需求选择最合适的方法。通过具体案例,展示了编译源码安装的灵活性和定制性。
292 2
|
3月前
|
关系型数据库 MySQL 数据库
MySQL事务隔离级别及默认隔离级别的设置
在数据库系统中,事务隔离级别是一个关键的概念,它决定了事务在并发执行时如何相互隔离。MySQL提供了四种事务隔离级别,每种级别都解决了不同的并发问题。本文将详细介绍这些隔离级别以及MySQL的默认隔离级别。
|
4月前
|
关系型数据库 MySQL 数据库连接
MySQL 表整行数据唯一性设置
MySQL 表整行数据唯一性设置
84 2
|
4月前
|
关系型数据库 MySQL 数据库
使用Docker部署的MySQL数据库如何设置忽略表名大小写?
【10月更文挑战第1天】使用Docker部署的MySQL数据库如何设置忽略表名大小写?
594 1
|
4月前
|
druid 关系型数据库 MySQL
开发指南048-mysql设置
如果链接的是mysql设置,需要做如下配置
|
3月前
|
关系型数据库 MySQL Java
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
74 0