首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python 学习手册
Python Cookbook
Python 基础教程
Python Sites
PyPI - Python Package Index
http://www.simple-is-better.com/
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
V2EX  ›  Python

现在有些手机都有表情 emoji 等多字节字符,用 utf-8 不够用了,要是用 mysql5.5 5.6 的话怎么解决?我知道用 5.7 可以用 utf8mb4.还有什么好办法? 或流行的

  •  
  •   python30 · 115 天前 · 2085 次点击
    这是一个创建于 115 天前的主题,其中的信息可能已经有所发展或是发生改变。
    20 回复  |  直到 2018-12-24 12:42:25 +08:00
        1
    des   115 天前 via Android
    你是不是对 utf8 有什么误解,什么叫 utf8 不够用了?
        2
    occam88   115 天前 via iPhone
    UTF-8 是变长编码,应该不会出现不太够的情况把
        3
    shoaly   115 天前
    json_encode 可解
        4
    agostop   115 天前
    5.5 也有 mb4 吧
        5
    lhx2008   115 天前 via Android
    5.5 就有 mb4,还有一种方法就是入库前替换成英文别名
        6
    FreshOldMan   115 天前
    上次看了稀里糊涂的,貌似 utf8 是可变的?
        7
    fy   115 天前
    utf8 类型只能容纳三个字节是 MySQL 独有的,utf8mb4 这种东西也是 MySQL 独有的,实际按照标准有 6 个字节可以用。至于说不够用了怎么办?再把页表掏出来用呗,最后再弄一个新的 uni-unicode 就完了
        8
    python30   115 天前
    @lhx2008 这个怎么替换? 指导一下?
        9
    python30   115 天前
    @shoaly 刚百度了一下. json_encode 是 php 的? django 的话怎么用?
        10
    lhx2008   115 天前 via Android
    @python30 去 github 找轮子,笑脸替换成:smile:,要有个表才行
        11
    littleylv   115 天前
    最保险,最方便,最一刀两断的是升级 mysql。5.6 就可以了支持 utf8mb4 了。
        12
    jasonhzy   115 天前
    https://dev.mysql.com/doc/relnotes/mysql/5.5/en/news-5-5-3.html 文档里已经说明 mysql5.5.3 以上均已支持 utf8mb4
        13
    cloverstd   115 天前 via iPhone
    存成 blob
        14
    NullWithMe   115 天前
    utf8mb4 可以
        15
    DavidNineRoc   115 天前
    楼主描述不清楚导致楼上的可能有些什么误解。
    表情四个字符,utf8 三个字节存储。
    最优:换 utfmb4
    程序:json 内容,然后正则处理
    曲线救国:base64 解决任何一切编码问题 >_<
        16
    NeinChn   115 天前
    base64 拯救一切....
        17
    shooyaaa   115 天前
    我以前用过 base64 编码再存
        18
    fenglangjuxu   115 天前 via iPhone
    楼上说的 base64 是正解 我也这么干过
        19
    BOYPT   115 天前
    mysql 的 utf8mb4 是正常的 utf8,mysql 的 utf8 是早产儿先天残废,程序里面按 utf8 处理然后给 utf8mb4 存储才是正常途径。
        20
    mmdsun   115 天前 via Android
    mysql utf-8 真是坑了不少人
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1232 人在线   最高记录 4385   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 23ms · UTC 23:15 · PVG 07:15 · LAX 16:15 · JFK 19:15
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1