`
zhaohaolin
  • 浏览: 1012350 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Python操作MySQL以及中文乱码的问题

阅读更多

原创   Python操作MySQL以及中文乱码的问题 收藏

Python操作MySQL需要安装Python-MySQL
可以从网上搜索一下,和一般的Python包一样安装

安装好之后,模块名字叫做MySQLdb ,在Window和Linux环境下都可以使用,试验了一下挺好用,
不过又发现了烦人的乱麻问题,最后用了几个办法,解决了!

我用了下面几个措施,保证MySQL的输出没有乱麻:
    1 Python文件设置编码 utf-8 (文件前面加上 #encoding=utf-8)
    2 MySQL数据库charset=utf-8
    3 Python连接MySQL是加上参数 charset=utf8
    4 设置Python的默认编码为 utf-8 (sys.setdefaultencoding(utf-8)

mysql_test.py

   
# encoding=utf-8
import  sys
import  MySQLdb

reload(sys)
sys.setdefaultencoding(
' utf-8 ' )

db
= MySQLdb.connect(user = ' root ' ,charset = ' utf8 ' )
cur
= db.cursor()
cur.execute(
' use mydb ' )
cur.execute(
' select * from mytb limit 100 ' )

f
= file( " /home/user/work/tem.txt " , ' w ' )

for  i  in  cur.fetchall():
    f.write(str(i))
    f.write(
" " )

f.close()
cur.close()


上面是linux上的脚本,windows下运行正常!

注:MySQL的配置文件设置也必须配置成utf8

设置 MySQL 的 my.cnf 文件,在 [client]/[mysqld]部分都设置默认的字符集(通常在/etc/mysql/my.cnf):

[client]
default-character-set = utf8
[mysqld]
default-character-set = utf8

分享到:
评论

相关推荐

    python查询mysql中文乱码问题

    Python查询MySQL时遇到的中文乱码问题是一个常见的编程困扰,特别是在使用Python 2.7版本时更为突出。本文将深入探讨这个问题的成因,并提供一套详细的解决方案。 首先,我们需要了解问题的根本原因。当Python与...

    python操作mysql中文显示乱码的解决方法

    以下是一些解决Python操作MySQL时中文乱码问题的关键步骤和方法: 1. **Python文件编码设置**: 在Python源代码文件的开头,添加注释 `#encoding=utf-8` 来指定文件的编码格式为UTF-8。这样,Python解释器在读取...

    Python操作MySQL数据进行图片存取操作

    在本例中,将详细讲解如何使用Python语言以及Pymysql包,对图片进行存储和读取的操作,这涉及到数据库的操作和图片的二进制处理。 首先,我们需要了解什么是Pymysql。Pymysql是一个Python语言中的数据库驱动模块,...

    Windows上Python连接MySQL数据库

    `charset='utf8mb4'`用于确保兼容UTF-8编码,防止中文乱码问题。 而使用`mysql-connector-python`库的代码则稍微不同: ```python import mysql.connector # 创建连接 cnx = mysql.connector.connect(user='your_...

    Python3连接mysql

    在使用Python进行Web开发、数据分析以及其他涉及数据库操作的应用场景时,连接并操作MySQL数据库是一项非常基础且重要的技能。本文将详细介绍如何使用Python3连接MySQL数据库,并针对过程中可能遇到的一些常见问题...

    python操作mysql数据库.docx

    ### Python操作MySQL数据库知识点解析 #### 一、引言 Python是一种广泛使用的高级编程语言,以其简洁和强大的功能受到开发者的喜爱。在处理数据库方面,Python同样表现出色。本文将详细介绍如何使用Python中的`...

    Ubuntu15.10使用mysql 5.6.28中文乱码问题解决.docx

    在Ubuntu 15.10操作系统中安装并使用MySQL 5.6.28时,可能会遇到中文乱码的问题。这通常与字符集配置有关,影响到数据的正确存储和显示。以下是一份详细的解决方案,旨在帮助你解决这个问题。 首先,我们需要检查...

    解决python2.7 查询mysql时出现中文乱码

    综上所述,解决Python 2.7操作MySQL时的中文乱码问题,需要从数据库配置、Python连接参数、脚本编码声明以及数据读取解码等多方面进行考虑和调整。正确配置这些环节,可以确保中文数据在Python和MySQL之间的正确传输...

    浅谈mysql的中文乱码问题

    MySQL的中文乱码问题是一个常见的困扰开发者的问题,尤其是在进行数据导入、导出或者通过不同的工具与MySQL交互时。本文将详细解析这个问题,并提供相应的解决策略。 首先,问题出现在使用Eclipse通过JDBC向MySQL...

    mysql中文乱码解决方案

    在使用MySQL数据库的过程中,可能会遇到中文显示乱码的问题。中文乱码问题通常是由于字符集设置不正确导致的。为了解决这个问题,我们需要从多个角度进行排查与解决,包括检查系统环境变量、MySQL配置文件、客户端...

    解决mysql乱码

    通过上述步骤,可以有效地解决大部分MySQL乱码问题。需要注意的是,在进行字符集调整时,最好备份现有数据,以防万一出现意外情况。此外,对于大型数据库,转换字符集可能需要较长时间,因此最好在非高峰时段进行...

    pymysql python连接mysql数据库

    `charset`用于设置字符编码,防止中文乱码问题。 ### 3. 插入数据 插入数据到MySQL数据库,可以使用`execute()`方法执行INSERT语句: ```python sql = "INSERT INTO table_name (column1, column2) VALUES ('...

    python操作mysql代码总结

    2. **设置字符编码**:为了避免中文乱码问题,需要设置数据库的字符编码。通过`db.set_charset('utf8')`确保数据在传输过程中保持正确的编码。 3. **创建游标对象**:游标是数据库操作的基本单元,用于执行SQL语句...

    python sqlobject(mysql)中文乱码解决方法

    UnicodeEncodeError: ‘latin-1’ codec can’t encode characters in ...Python mysql 中文乱码 的解决方法,有需要的朋友不妨看看。 先来看一段代码:复制代码 代码如下:import MySQLdb db_user = “tiger”

    OpenStack数据库中文乱码问题.docx

    总之,解决OpenStack数据库中文乱码问题的关键在于确保整个数据处理链路中的编码一致性,从数据库配置、应用程序设置到具体的操作步骤,都需要正确地处理Unicode字符。遵循上述建议,可以有效地避免和解决这类问题,...

    Ubuntu的MySQL中文乱码问题

    近一段时间学习Django,在进行与MySQL数据联合使用的插入数据的时候遇到下边的问题:  /usr/local/lib/python2.7/dist-packages/Django-1.11.dev20170117002028-py2.7.egg/django/db/backends/mysql/base.py:109: ...

    一次性解决中文乱码问题

    通过以上分析,我们可以看到,解决中文乱码问题主要在于理解和掌握字符编码的原理,以及在实际操作中保持编码的一致性。对于初学者来说,了解这些基础知识并养成良好的编码习惯,可以有效避免乱码问题,提高开发效率...

    Python如何读取MySQL数据库表数据

    本文实例为大家分享了Python读取MySQL数据库表数据的具体...## 加上字符集参数,防止中文乱码 dbconn=pymysql.connect( host="**********", database="kimbo", user="kimbo_test", password="******", port=330

Global site tag (gtag.js) - Google Analytics