首页
学习
活动
专区
圈层
工具
发布

为什么数据库存男女要存01而不是直接存汉字

存储空间 汉字: 汉字在数据库中通常使用 UTF-8 编码,一个汉字需要 3 个字节(比如“男”或“女”)。 数字编码: 使用 0 和 1 只需要 1 个字节(即使使用 8 位表示)。...比较: 在大型数据库中,使用数字编码可以显著提升查询和处理速度,特别是在涉及大量数据和复杂操作时。 3. 数据一致性和输入错误减少 汉字: 使用汉字可能会导致数据输入不一致的问题。...数字编码: 数字编码可以直接进行统计、加总和其他计算操作,非常简便。 比较: 在数据分析和报表生成时,使用数字编码更加高效和方便。 6....结论 综上所述,虽然直接存储汉字也可以实现性别区分,但从存储空间、性能优化、数据一致性、跨语言兼容性、统计计算便利性以及通用性和标准化的角度来看,使用 0 和 1 这样的二进制数字编码在实际应用中具有明显的优势...因此,大多数数据库设计和应用场景中都会选择这种方式来存储性别信息。

92120
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    聊一聊数据库的行存与列存

    源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件...Hystrix 源码解析 Java 并发源码 来源:my.oschina.net/gaussdb /blog/5544252 存储方式比较 优缺点比较 选择建议 注意事项 ---- 好多人最开始学习数据库的时候...,是关系数据库,数据以表格形式存储,一行表示一条记录。...而一些数据库还支持列存储(Column-based store),它将表按列存储到磁盘分区上。...注意事项 列存由于特殊的存储方式,使用时约束比较多。比如,列存表不支持数组、不支持生成列、不支持创建全局临时表、不支持外键,支持的数据类型也会比行存要少。使用时需要查看对应的数据库文档。

    2.8K10

    Nginx+lua+mysql实时存日志

    通过lua脚本在日志生成阶段获取信息,然后将数据插入mysql。nginx有一个限制,无法在log阶段访问socket即无法访问mysql,所以无法在log阶段直接将数据存入mysql。...Mysql 访问权限的问题 不但访问Mysql的Mysql用户需要有操作对应数据库的权限,还需要调用Mysql命令的用户具有访问mysql的权限。....* to root@xxx IDENTIFIED BY 'password'; Mysql 编码类型 总的来说,Mysql的数据库对应三种编码。...Mysql客户端显示数据的编码,连接Mysql用的编码(即数据存入mysql时,数据的编码),Mysql存储用的编码(字段,表,数据库三种格式可能不同)。...不管Mysql存储用的编码是什么,只要Mysql客户端显示数据的编码和连接Mysql用的编码相同,数据就能通过mysql客户端正确显示。

    3.3K70

    MySQL怎么存文本不乱码?

    导读 MySQL里怎么存储那些看起来会乱码的字符? 我在“UTF8字符集的表怎么直接转UTF8MB4”一文中介绍了如何把表字符集由UTF8直接转换成UTF8MB4的几种方法。...如果是通过WEB接口存储数据,则建议在browser端、server端全都采用UTF8字符集,MySQL Server端采用UTF8/UTF8MB4均可(针对大多数文本,其实UTF8字符集就足够存储的了...其中,MySQL端的字符集设置比较让人头大,涉及到的字符集有好几个: character_set_server,server端默认字符集; character_set_database,database...MySQL采用UTF8MB4字符集时,存储文本实际消耗字节数是由文本内容的字节数决定的,并非总是需要4字节,列举几种情况: 输入字符集任意,且存储ASCII字符时,每个字符需要1byte; 输入字符集是...参考及延伸阅读 UTF8字符集的表怎么直接转UTF8MB4 FAQ系列 - 调用存储过程时报错 Illegal mix of collations 听说JOIN的列类型一定要一样 https://dev.mysql.com

    2.6K20

    MySQL 怎么存文本不乱码?

    导读 MySQL里怎么存储那些看起来会乱码的字符?...把表字符集由UTF8直接转换成UTF8MB4的几种方法: 1、只修改字符集(使用默认校验集) yejr@imysql.com> alter table t1 convert to character set...如果是通过WEB接口存储数据,则建议在browser端、server端全都采用UTF8字符集,MySQL Server端采用UTF8/UTF8MB4均可(针对大多数文本,其实UTF8字符集就足够存储的了...其中,MySQL端的字符集设置比较让人头大,涉及到的字符集有好几个: character_set_server,server端默认字符集; character_set_database,database...MySQL采用UTF8MB4字符集时,存储文本实际消耗字节数是由文本内容的字节数决定的,并非总是需要4字节,列举几种情况: 输入字符集任意,且存储ASCII字符时,每个字符需要1byte; 输入字符集是

    2.8K10

    CDB for MySQL 8.0列存引擎CSTORE介绍

    CDB for MySQL 8.0是腾讯TEG云架构平台部推出的新一代MySQL产品。...CSTORE的查询引擎吸收了MySQL查询引擎的优点,又针对列存的特点做了优化。因此,MySQL原生支持的大部分查询都可以不修改而继续运行,并且带来性能的提升。...(3)聚合查询速度快 类似于MAX、MIN、SUM、AVG、COUNT等聚合查询可以直接通过元信息的简单查询和计算获得结果,而不会造成实际数据块的IO,从而可以立即获得结果。...腾讯数据库技术团队专注于持续优化数据库内核和架构能力,提升数据库性能和稳定性,为腾讯自研业务和腾讯云客户提供“省心、放心”的数据库服务。...此公众号旨在和广大数据库技术爱好者一起推广和分享数据库领域专业知识,希望对大家有所帮助。

    3.1K72

    node.js(5) MySQL数据库的学习

    学习内容 ⊙ 数据库的基本概念 ⊙ MySQL的安装 ⊙ MySQL的使用 ⊙ MySQL的语法 ⊙ 在项目中操作MySQL 大部分知识点都是直接截图,到实际操作我会演示 MySQL...p=59&spm_id_from=pageDriver MySQL的使用 输入完密码以后就能进入到主界面 注意:数据库的名字不要出现空格和中文 现在来看看上面一行标识的含义 设置为这样...order by count(*)函数 运行前的数据 运行后,找出5条满足status=0的数据 左右滑动查看 AS设置别名 也可以给特定的列取别名 在项目中操作MySQL...首先使用npm安装mysql的包(注意包的名字是小写的) 测试一下连接成功没: 有结果就是连接成功 在项目中对数据进行增删改查 查看users里的数据(select) 注意: 如果执行的是

    1.7K20

    Mysql存emoji表情(base64编码)

    Mysql的utf8编码为何存储不了Emoji表情?...总结来说Emoji对应的Unicode编码不在utf8对应的Unicode分组平面内,无法直接用Mysql的utf8存储Emoji编码格式字符。...让Mysql支持Emoji表情的多种方式 修改Mysql的表面为utf8_mb4 1 这种做法,网上有很多教程这里不做细致说明。...这种做法我是觉得很不方便,还需要修改数据库配置、重启;如果说是针对线上生产环境,重启数据库的代价自然是很高的,也是有风险的。...总结 本人也是遇到数据库存储Emoji报错,为了解决这个问题,网上搜索资料总得了这几点,给出以下两篇文章,推荐大家去阅读,理解MySql在utf8下为什么不能存储Emoji表情,理解Unicode基本知识

    3.8K30
    领券