http://www.imooc.com/learn/475(慕课网视频)
Python DB API 封装Python到数据库服务器之间的操作
import MySQLdb:
需要下载mysql-python(https://sourceforge.net/projects/mysql-python/#)
安装需要先安装python2.7
一下内容转载自:http://blog.csdn.net/seven_zhao/article/details/16939053
windows7 64 bits 安装 MySQL-Python-1.2.4b4.win32-py2.7.exe
安装时提示需要python2.7,但是此时python2.7已经添加到环境变量中,要解决这个问题,可以使用如下的方法:
在D盘新建register.py的文件,内容如下:
#
# script to register Python 2.0 or later for use with win32all
# and other extensions that require Python registry settings
#
# written by Joakim Loew for Secret Labs AB / PythonWare
#
# source:
# http://www.pythonware.com/products/works/articles/regpy20.htm
#
# modified by Valentine Gogichashvili as described in http://www.mail-archive.com/distutils-sig@python.org/msg10512.html
import sys
from _winreg import *
# tweak as necessary
version = sys.version[:3]
installpath = sys.prefix
regpath = "SOFTWARE\\Python\\Pythoncore\\%s\\" % (version)
installkey = "InstallPath"
pythonkey = "PythonPath"
pythonpath = "%s;%s\\Lib\\;%s\\DLLs\\" % (
installpath, installpath, installpath
)
def RegisterPy():
try:
reg = OpenKey(HKEY_CURRENT_USER, regpath)
except EnvironmentError as e:
try:
reg = CreateKey(HKEY_CURRENT_USER, regpath)
SetValue(reg, installkey, REG_SZ, installpath)
SetValue(reg, pythonkey, REG_SZ, pythonpath)
CloseKey(reg)
except:
print "*** Unable to register!"
return
print "--- Python", version, "is now registered!"
return
if (QueryValue(reg, installkey) == installpath and
QueryValue(reg, pythonkey) == pythonpath):
CloseKey(reg)
print "=== Python", version, "is already registered!"
return
CloseKey(reg)
print "*** Unable to register!"
print "*** You probably have another Python installation!"
if __name__ == "__main__":
RegisterPy()
然后运行这个python文件,效果如下:
然后在重新安装就没有问题了。
连接数据库
数据库连接对象connection,创建方法:MySQLdb.connect(参数)
数据库游标对象cursor{execute(sql),fetchone,fetchmany,fetchall,rowcount,close}
import MySQLdb conn = MySQLdb.connect( host='127.0.0.1', port=3306, user='root', passwd='1234', db='imooc', charset='utf8' ) cursor=conn.cursor() print conn print cursor cursor.close() conn.close()
对查询到的数据进行处理
cursor=conn.cursor() sql='select * from user' cursor.execute(sql) rs=cursor.fetchall() for row in rs: print 'user_id=%s,user_name=%s'% row