百科问答小站 logo
百科问答小站 font logo



为什么 mysql 要额外加入一个 utf8mb4 数据类型,而不是原地升级 utf8? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

其实我理解提问者的疑问在于,明明最长四位的UTF-8是之前最长三位的UTF-8的超集,也就是可以完全向下兼容,为什么不能就地升级呢?

这里面有个问题就是,即便是原有功能的扩展,有时候也可能是一种破坏性更新。
尽管并不知道这是不是MySQL选择这个的原因。但是utf8和utf8mb4的行为就是会不一样的。譬如说原有的utb8对于不支持的字符存储报错,那么你就地升级到utf8mb4他就不会报错了,这也是行为的变化,万一有些SB就是依赖这个报错呢?这也是Windows必须保留各种系统组件的历史版本的原因之一……




  

相关话题

  大家设计数据库时使用外键吗? 
  怎样才算精通SQL? 
  为什么 mysql 要额外加入一个 utf8mb4 数据类型,而不是原地升级 utf8? 
  为什么 JS 不能绕过后端代码直接调数据库,有哪些后端处理的逻辑,JS 不能写? 
  鹿晗关晓彤公开恋情,是如何把新浪微博的服务器搞垮的? 
  C# 为何MySQL无法打开连接? 
  怎么实现一个简单的数据库系统? 
  用户和管理员同时操作同一记录的不同字段,如果做并发控制? 
  怎样才能写出高质量的SQL语句? 
  2015年6月30日 闰秒 为什么世界多一秒钟会有这么大影响? 

前一个讨论
大脑相当于计算机的易失性存储器(RAM)吗?
下一个讨论
为何ps,Xbox必须升级最新系统才可访问应用商店,而iPhone不升级也可访问App Store?





© 2025-05-06 - tinynew.org. All Rights Reserved.
© 2025-05-06 - tinynew.org. 保留所有权利