V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
? MySQL 5.5 Community Server
? MySQL 5.6 Community Server
? Percona Configuration Wizard
? XtraBackup 搭建主从复制
Great Sites on MySQL
? Percona
? MySQL Performance Blog
? Severalnines
推荐管理工具
? Sequel Pro
? phpMyAdmin
推荐书目
? MySQL Cookbook
MySQL 相关项目
? MariaDB
? Drizzle
参考文档
? http://mysql-python.sourceforge.net/MySQLdb.html
demonchang
V2EX  ?  MySQL

数据库存储外国人名字中的点出问题了

  •  
  •   demonchang ·
    demonchang · 2016-11-08 12:11:22 +08:00 · 4163 次点击
    这是一个创建于 2739 天前的主题,其中的信息可能已经有所发展或是发生改变。

    腾讯云最新优惠活动来了:云产品限时1折,云服务器低至88元/年 ,点击这里立即抢购:9i0i.cn/qcloud,更有2860元代金券免费领取,付款直接抵现金用,点击这里立即领取:9i0i.cn/qcloudquan

    (福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

    俄罗斯军事专家瓦西里·卡申在为卫星网撰写的文章中就这种新型主战坦克的能力进行了评述

    比如上面的那句话。里面有句点。然后我采集的时候存入数据库的时候就不行。。。

    我的 mysql 数据库编码 utf8mb4

    新闻网连接 http://news.qq.com/a/20161108/010304.htm

    9 条回复  ?  2016-11-09 13:02:35 +08:00
    imn1
        1
    imn1  
       2016-11-08 13:18:50 +08:00   ?? 1
    自己看看源代码吧
    <script>
    var sosoArticleKey = document.getElementById("sosoArticlKey"), sosoArticleValue = '';
    if(sosoArticlKey){
    sosoArticleKey.value = sosoArticlKey.replace("&#183;","·");
    sosoArticleKey.value = sosoArticlKey.replace("&#23301;","嬅");
    sosoArticleKey.value = sosoArticlKey.replace("&#23323;","嬛");
    sosoArticleKey.value = sosoArticlKey.replace("&#22247;","囧");
    sosoArticleKey.value = sosoArticlKey.replace("&#38229;","镕");

    sosoArticleValue = sosoArticleKey.value;
    }
    sosoArticleKey.onfocus = function(){
    if(sosoArticleKey.value == sosoArticleValue){
    sosoArticleKey.value = '';
    }
    }
    sosoArticleKey.onblur = function(){
    if(sosoArticleKey.value == ''){
    sosoArticleKey.value = sosoArticleValue;
    }
    }
    </script>
    kideny
        2
    kideny  
       2016-11-08 15:11:50 +08:00
    哈哈,这个问题神烦。
    身份证里面名字带点,我也遇到过。
    kideny
        3
    kideny  
       2016-11-08 15:12:29 +08:00
    对字段内容进行过滤的时候,也烦这个事情。
    demonchang
        4
    demonchang  
    OP
       2016-11-08 16:37:58 +08:00
    我现在解决方案就是存入了原文中的 `&#183;` 这个字符。这样就可以存进去了
    imn1
        5
    imn1  
       2016-11-08 16:59:19 +08:00
    主要问题是 gbk 没有这个字符,但 unicode/utf-8 有。所以纯显示没问题,但转码就不能一句完成,如果你想把原字符也存进数据库,需要后台程序先转换“&#183;”
    xmoiduts
        6
    xmoiduts  
       2016-11-09 12:27:23 +08:00 via Android
    23333 写 py 脚本的时候也遇到了这个问题,后来干脆不管了,直接显示为问号。
    demonchang
        7
    demonchang  
    OP
       2016-11-09 12:44:10 +08:00
    @xmoiduts 这也行。。。哈哈哈
    5 楼说的对。数据库要想存元自负。需要各种转换先
    demonchang
        8
    demonchang  
    OP
       2016-11-09 12:44:38 +08:00
    元自负 -> 原字符
    xmoiduts
        9
    xmoiduts  
       2016-11-09 13:02:35 +08:00 via Android
    @demonchang 反正就是个 调 ffmpeg 转格式的脚本,拖动即转码。自己玩玩没啥要求?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1298 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 23:28 · PVG 07:28 · LAX 16:28 · JFK 19:28
    Developed with CodeLauncher
    ? Do have faith in what you're doing.


    http://www.vxiaotou.com