最近开始学习python,接触到了MySQLdb,总是会遇到中文乱码不能插入的问题,今天写个一个简单的程序把中文问题都测试一遍。
#!/usr/bin/env python
#coding:utf-8
"""
这个程序只是简单测试MySQLdb对mysql数据库的增删改查,中文的插入,再表的默认编码是utf8或者gbk的情况下
都可以正常插入,不管数据库的默认编码,当表的默认编码是latin1时,插入中文失败
对数据库进行修改以后需要调用commit方法来进行提交,才能再数据库中看到修改的情况
"""
import MySQLdb
conn=MySQLdb.connect(host="127.0.0.1",user="root",passwd="1q2w3e4r",db="mysite2",charset="utf8")
c=conn.cursor()
#首次进行查询如果有中文应该可以正常显示
sql="select name,id from zhanbu order by id desc limit 1 "
#c.execute("set names utf8")
#c.execute("set character_set_client=utf8")
#c.execute("set character_set_results=utf8")
d=c.execute(sql)
dd=c.fetchall()
#print d
iid=1
if len(dd)>0:
iid=dd[0][1]
print "第一次查询"
for i in dd:
print i,i[0]
charset = conn.character_set_name()
#query = query.encode(charset)
print charset
#print query
#增加
#进行中文插入
print "插入成功后"
content="中文"
sql="insert into zhanbu(id,name) values(%d,'%s')"%(iid+1, content)
#print sql
d=c.execute(sql)
conn.commit()
#中文插入以后进行查询,看是否能够正常显示
sql="select name,id from zhanbu order by id desc limit 1 "
d=c.execute(sql)
dd=c.fetchall()
for i in dd:
print i[0]
#插入完成后进行修改
print "修改成功后"
appendcontent="追加"
sql="update zhanbu set name='%s' where id=%d"%(appendcontent,iid+1)
d=c.execute(sql)
conn.commit()
sql="select name,id from zhanbu order by id desc limit 1 "
d=c.execute(sql)
dd=c.fetchall()
for i in dd:
print i[0]
#修改完成以后删除数据
print "删除数据以后"
sql="delete from zhanbu where id=%d"%(iid+1,)
d=c.execute(sql)
conn.commit()
sql="select name,id from zhanbu order by id desc limit 1 "
d=c.execute(sql)
dd=c.fetchall()
for i in dd:
print i[0]
c.close()
conn.close()
分享到:
相关推荐
NULL 博文链接:https://lijunjie.iteye.com/blog/456650
Python在与MySQL数据库进行交互时,常常需要借助于特定的库来实现数据的存取操作。其中,MySQLdb是Python中一个广泛使用的开源MySQL连接工具,尤其适合于Python 2.x版本。它提供了Python编程语言与MySQL数据库之间的...
MySQLdb是Python连接MySQL数据库的一个常见模块,它实现了Python DB-API V2.0规范。MySQLdb基于MySQL的C API构建,允许Python程序员方便地与MySQL服务器进行通信。 要安装MySQLdb,首先确保你已经安装了MySQL服务器...
基于python实现的Excel一键导入MySQL数据库,MySQL数据库一键读取到Excel表格+源码+使用教程+案例展示,适合毕业设计、课程设计、项目开发。项目源码已经过严格测试,可以放心参考并在此基础上延申使用~ 项目简介:...
综上所述,这个压缩包中的文件涉及到使用Python(可能通过MySQLDB库)连接和操作MySQL数据库的基础知识,包括建立连接、执行SQL、处理结果和测试代码。这些是数据库开发中的核心技能,对于任何需要在Python中处理...
MySQLDB是Python编程语言中用于连接MySQL数据库的一个库,它为Python程序员提供了接口来操作MySQL数据库。这个包在很多Python项目中被广泛使用,尤其是在自动化测试框架如Robot Framework中,以便进行数据库相关的...
`MySQLdb`是Python的一个接口,用于连接MySQL数据库,它是Python DB-API(PEP 249)的实现,允许Python程序员使用标准的SQL语法来操作MySQL数据库。 `MySQL-python-1.2.3.win32-py2.7.exe`是针对Windows平台的二...
标题中的“c#mysqlDB.zip”表明这是一个与C#编程语言和MySQL数据库相关的资源包,主要目的是为了在C#环境中方便地操作MySQL数据库。描述提到这包含“两款必要插件”,暗示了它提供了用于C#应用程序与MySQL交互的库和...
Python中的MySQLdb模块是Python连接MySQL数据库的一个常用库,它为Python程序员提供了与MySQL数据库交互的能力。在64位的Windows 7系统上,安装这个模块可能会遇到一些挑战,因为并非所有的版本都与所有环境完全兼容...
MySQLdb是Python编程语言中用于连接MySQL数据库的一个重要库,主要为Python开发者提供了一种方便的方式来操作MySQL数据库。在64位系统上,你需要下载与系统兼容的版本,即"mysqldb64位",这通常是包含了适配Python...
最近在新的环境配置pycharm的项目时候,发现pycharm不能连接到mysql数据库。由于安了java环境但是还没配置相关的库,并且jetbrains家的IDE一般都是java写的,于是猜想可能是java缺少mysql的驱动。所以就动手起来,...
- `MySQLdb`: 用于连接MySQL数据库。 - 其他标准库:如`re`(正则表达式)、`time`等。 #### 四、爬虫流程概述 1. **启动浏览器**: 使用Selenium启动Firefox浏览器,并设置超时时间。 2. **页面加载**: 加载指定的...
本文将详细介绍如何在JSP应用中配置并使用连接池来连接MySQL数据库。 #### 二、连接池的基本概念 连接池是一种用于管理数据库连接的技术,它可以复用现有的连接,避免频繁创建和销毁连接所带来的资源开销。使用...
MySQLdb是Python的一个数据库适配器,它允许Python程序与MySQL数据库进行交互。但是,Python 3.x版本中不再直接支持MySQLdb,而是推荐使用`mysql-connector-python`或者`pymysql`。不过,通过`mysqlclient`库,我们...
在Python 2.6集成mysqldb的完整包中,用户可以利用这个包在Python程序中方便地进行MySQL数据库的操作,如数据查询、插入、更新和删除等。 MySQLdb是基于MySQL-connector项目,并且进行了Python化改造,使得它能够...