zoukankan      html  css  js  c++  java
  • 怎样将Emoj表情插入mysql5.6数据库__python+mysqldb

    废话不多说,相信看到这里的看客已经看过非常多配置文件的设置方法。可是问题还是没有解决。本文就具体记录一下我的解决方法吧。


    我的环境:mysql5.6+python2.7.3+MySQLdb1.2.4



    1、桌面上右击 计算机,选择“管理”, 选择“服务和应用程序”---“服务”, 在里面找到MySQL56的服务。




    2、右击 MySQL服务,查看“属性”:往后拖一下,找到—default-file下图中画框部分,这里指明了MySQL启动的时候要载入的配置文件.





    3、  找到该路径下的配置文件,进行改动。





    4、  详细改动内容:





    文字:

    [client]

    port=3306

    default-character-set=utf8mb4

    [mysql]

    port=3306

    default-character-set=utf8mb4

    [mysqld]

    port=3306

    character-set-client-handshake= FALSE

    character-set-server= utf8mb4

    collation-server= utf8mb4_unicode_ci

    init_connect='SET NAMES utf8mb4'



    5、  然后重新启动MySQL56服务。



    6、  在执行里面,找到并打开mysql command line,使用下面命令查看是否生效。

    SHOWVARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE'collation%';

    看到以下这个画面就说明生效了:





    7、以为这样就完了吗?No,即使是这样我们不管是在mysql workbench还是通过python+mysqldb建立的utf8mb4数据库事实上还是utf-8的,也正因如此,我们的emoj字符才一直不能插入到数据库中。


        即使建立的数据库是utf8mb4的,我们看到这个数据库还是utf8的。


    所以我们还须要继续实验,细致看改动配置文件中面有一句:init_connect='SETNAMES utf8mb4',那我能够拿来用到数据库中。

    果然,发现加上“SET NAMES utf8mb4;”这句以后,数据库变成了utf8mb4.:




    这样能够再推广应用到代码里面。见8.



    8、 在python + mysqldb 或者 python +sqlalchemy两种模式都适用。

    创建连接以后,游标对象首先要运行一遍“SET NAMES utf8mb4;”这样就能保证数据库连接是以utf8mb4编码格式连接,数据库也就变成utf8mb4的啦。前面都是铺垫的内容,假设没有第8步,前面都是白做的。

    Mysql:




    Sqlalchemy:




  • 相关阅读:
    JPA、Hibernate、Spring data jpa之间的关系
    MySQL8.0的安装、配置、启动服务和登录及配置环境变量
    jdbc和odbc
    Win10下 Java环境变量配置
    SpringMVC框架理解
    看看资深程序员是如何教你破解图形验证码!这不很简单嘛!
    破解极验(geetest)滑动验证码
    java做图片点击文字验证码
    java实现点击图片文字验证码
    什么是HttpOnly
  • 原文地址:https://www.cnblogs.com/blfshiye/p/4296845.html
Copyright © 2011-2022 走看看