我正在尝试将一个特殊字符(,代码点U + 1F352)添加到MySQL数据库中的VARCHAR字段,它只是给我数据库中的空字符串。
sql = "UPDATE table SET special_char = %s WHERE id = %s"
sql_db.execute(sql, (special_char, id))
我在页面顶部有#coding = utf-8。我要添加的字符是其中之一:http://en.wikipedia.org/wiki/Emoji#endnote_U2600_as_of_Unicode_version
答案 0 :(得分:0)
MySQL与Unicode基本多语言平面(BMP)兼容(字符u'00000000'- u'0000FFFF)。
您尝试使用的特殊字符的引用是u'0001F352'。注意最后有5个非零数字,所以这不是BMP。
幸运的是,如果您正在寻找彩色符号,那么BMP中就会有一些。
有些会自动显示为彩色,例如明星:u'00002B50'。其他,您需要通过在末尾添加'\ U0000FE0F'来激活颜色,例如,u'\ U00002666'和u'\ U00002666 \ U0000FE0F'
其他包括: U '\ U000021AA \ U0000FE0F' U '\ U00002668 \ U0000FE0F' U '\ U000023EC \ U0000FE0F' U '\ U00002757 \ U0000FE0F' U '\ U00002665 \ U0000FE0F' U '\ U00002660 \ U0000FE0F' U '\ U00002666 \ U0000FE0F' U '\ U00002663 \ U0000FE0F' U '\ U000026AA \ U0000FE0F' U '\ U000026AB \ U0000FE0F' U '\ U00002B50 \ U0000FE0F' U '\ U0000261D \ U0000FE0F'
有关更多信息,请查看此数据库中的统一字符。 http://www.unicode.org/~scherer/emoji4unicode/snapshot/utc.html