python2.6.2连mysql_python2.6连接mysql5.4

参考“windows python2.6 django 开发环境搭建”

网址:http://blog.csdn.net/dskit/archive/2009/12/30/5106701.aspx

1.下载MySQL-python-1.2.2.win32-py2.6.exe

下载地址:http://home.netimperia.com/files/misc/MySQL-python-1.2.2.win32-py2.6.exe

参见:http://sourceforge.net/forum/forum.php?thread_id=2316047&forum_id=70460

安装到python的\Lib\site-packages目录下

2.下载:

libguide40.dll.zip(77.3 KB)

libmmd.dll.zip(169 KB)

libmySQL.dll.zip(861 KB)

将以上3个文件解压后,复制到python的\Lib\site-packages目录下,这3个文件在文档后的附件中。

3.修改python的\lib\site-packages\MySQLdb\目录下的__init__.py和converters.py文件,具体修改如下:

1) __init__.py 文件

from sets import ImmutableSet

class DBAPISet(ImmutableSet):

修改为:

class DBAPISet(frozenset) :

2)converters.py文件,去除:

from sets import BaseSet, Set

3)converters.py文件,将 Set 修改为 set (只有两处):

45 行: return set([ i for i in s.split(',') if i ])

129行: set: Set2Str,

注:行号可能根据安装的mysql-python-XX.exe的版本不同而有所不同。

一段简单的连接数据库程序:

'''

Created on 2011-5-4

@author: kortide

'''

# -*- coding: utf-8 -*-

# encoding=gbk

import sys

import MySQLdb

reload(sys)

sys.setdefaultencoding('utf-8')

def getdata ():

try:

conn = MySQLdb.connect(host='192.168.4.20', user='root', passwd='wl', db='agent', port=3306, charset='utf8')

try:

cur = conn.cursor()

sql = r'select * from members'

cur.execute(sql)

allPerson = cur.fetchall()

finally:

cur.close()

conn.close()

except Exception, e:

print 'abc', e

return

for rec in allPerson:

print rec[0],rec[1]

if __name__ == '__main__':

getdata()

注:如果没有第二步的复制3个文件,可能会遇到如下错误:

1.ImportError: DLL load failed: 找不到指定的模块。

—————————————————————————————————-

D:\Program Files\Python2.6>python

Python 2.6.1 (r261:67517, Dec  4 2008, 16:51:00) [MSC v.1500 32 bit (Intel)] on win32

Type “help”, “copyright”, “credits” or “license” for more information.

>>> import MySQLdb

Traceback (most recent call last):

File “”, line 1, in

File “D:\Program Files\Python2.6\Lib\site-packages\MySQLdb\__init__.py”, line 19, in

import _mysql

ImportError: DLL load failed: 找不到指定的模块。

—————————————————————————————————-

解决方法:下载libmmd.dll(附件)和libguide40.dll(附件)两个dll文件并复制到python安装目录的Lib\site-packages下。

参见:http://sourceforge.net/forum/message.php?msg_id=5613887

2.ImportError: DLL load failed: 找不到指定的模块。

—————————————————————————————————-

D:\Program Files\Python2.6>python

Python 2.6 (r26:66721, Oct  2 2008, 11:35:03) [MSC v.1500 32 bit (Intel)] on win32

Type “help”, “copyright”, “credits” or “license” for more information.

>>> import MySQLdb

D:\Program Files\Python2.6\lib\site-packages\MySQLdb\__init__.py:34: DeprecationWarning: the sets module is deprecated

from sets import ImmutableSet

—————————————————————————————————-

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值