首先,需要安装MySQL数据库
......此处省略若干字......
MySQL-python:是封装了MySQL C驱动的Python驱动。除此之外,MySQL官方也提供了一个Python驱动mysql-connector-python,这里我们使用MySQL-python
MySQL-python是连接MySQL的一个数据库连接的包,可以使用pip安装
pip install MySQL-python
如果出现'mysql_config: not found'的错误,这是因为mysql_config是属于MySQL开发用的文件,使用apt-get安装的mysql是没有这个文件的,使用apt-get安装这两个包即可解决:
libmysqld-dev
libmysqlclient-dev
centos下请安装mysql-devel
yum -y install mysql-devel
打开python,输入import MySQLdb
如果没有报错,则说明安装成功
如果出现ImportError: No module named MySQLdb的错误哥哥也帮不了你,自行百度解决吧,如果自认为英文比较好,那就google,英文不好又不想用百度我推荐你使用bing(此处是广告)
如何使用
第一步:创建数据库连接,传入参数主机,数据库用户名,数据库密码,要使用的数据库
第二步:获取游标(游标是操作数据库所必须的)
第三步:执行数据库操作获取结果集每执行一次数据库操作都会讲结果集写入缓冲区,然后使用fetchxxx方法从缓冲区取数据,取完缓冲区就空了
第四步:关闭游标和数据库连接
代码:
import MySQLdb
host = 'localhost'
user = 'root'
password = 'root' #来黑我啊[捂脸逃跑.gif]
database = 'test'
conn = MySQLdb.connect(host, user, password, database) #创建数据库连接
cur = conn.cursor() #获取游标
sql = 'select * from user' #构造sql语句,就是喜欢用*,嘿嘿嘿
cur.execute(sql) #执行sql语句
rs = cur.fetchall() #取出结果
print rs
cur.close()
conn.close()
连接也可以这样以dict的形式传入:
conn= MySQLdb.connect( host='localhost', port = 3306, user='root', passwd='123456', db ='test', )
fetchall():取出所有记录,返回一个元组
fetchone():取一条数据并且游标下移一条记录
rowcount:属性,返回受影响的记录条数
sql = "DELETE FROM EMPLOYEE WHERE AGE > '%d'" % (20)
try: # 执行SQL语句
cursor.execute(sql) # 向数据库提交
db.commit()
except: # 发生错误时回滚
db.rollback()