• MYSQL 中unicode 编码字符遍历转中文字符


    BEGIN
        # by zouzp / 21-03-26
        # unicode 转中文字符的方法;
        # 注意  u 之间不能有空格,再传入的字符串的时候不能有空格,和oracle 一样会导致报错提示传入的数据有异常;
        
        DECLARE code1,code2,code3 VARCHAR(2000); -- 定义三个变量用于接收 unicode 字符串前面 和中间 和后面的字符
    
        DECLARE s_index SMALLINT UNSIGNED DEFAULT 0; -- 定义用于定位index的变量
    
        DECLARE result,tmp_txt TEXT;    -- 定义返回用的变量;
    
        DECLARE temp VARCHAR(1); -- 临时用的变量;
    
        SET s_index=LOCATE("u", content,1); --  获取第一次出现'u'字符的位置;
    
        SET result = "";
        set tmp_txt = content;
    
        WHILE s_index>0 DO
            
            -- 获取出现问题的字符的前面字符
            set code1 = substr(tmp_txt,1,s_index-1);
            -- 获取出问题的字段;
            SET code2 = substr(tmp_txt,s_index+1,4);
            -- 获取后面未处理的字段
            SET code3 = substr(tmp_txt,s_index+5);
    
            -- 修改有问题的字段
            SET temp = CONVERT( unhex(code2) USING ucs2);
            
            -- 拼接字段
            set tmp_txt = CONCAT(code1,temp,code3);
    
            SET s_index = LOCATE("u", tmp_txt, 1);--  再次查看有没有保护u 的unicode 的字符串;
        END WHILE ;
            SET result = tmp_txt; -- 返回;
        RETURN result;
    END
    如有错误,望费心指出。 感激涕零。
  • 相关阅读:
    hdu 3951 Coin Game
    hdu 1273 漫步森林
    hdu 2082 找单词
    kmp算法(模板)
    CodeForces 742B Arpa’s obvious problem and Mehrdad’s terrible solution
    大二上每日总结
    大二上每日总结
    大二上每日总结
    大二上学期周总结
    大二上每日总结
  • 原文地址:https://www.cnblogs.com/zouxiaopq/p/14582246.html
Copyright © 2020-2023  润新知