我们用python进行编程时,经常会把数据存到MySQL数据库上,下面让来我介绍Python如何操作MySQL数据库。
一、安装MySQLdb库
MySQL是最流行的开源数据库之一,但在Python标准库中并没有集成MySQL接口程序,MySQLdb是一个第三方包,需独立下载并安装。
下载地址:官网 http://sourceforge.net/projects/mysql-python/
也可以到这里下载MySQL for python win32 py2.7:http://download.csdn.net/detail/qq_30189255/9414914
下载后根据提示安装即可(超级简单)
二、测试是否安装成功
代码为:
import MySQLdb
如果没有报错,说明安装成功;
如果出错,提示:ImportError: No module named MySQLdb,则安装失败,需要检查自己的python版本是否与MySQLdb库相对应
检查自己的python版本,可用下面代码:
import platform
print platform.python_version()
或:
import sys
print sys.version
print sys.version_info
三、python 操作mysql数据库
__author__ = 'yip'
#coding=utf-8
import MySQLdb
# Connect() 方法用于创建数据库的连接,里面可以指定参数:用户名,密码,主机等信息。
conn = MySQLdb.connect(
host = 'localhost', #本地主机,默认为'localhost'
port = 3306, #端口,默认为3306
user = 'root', #用户名,默认为'root'
passwd = '123456', #密码,自设
db ='demo', #连接名为'demo'的数据库
)
# 通过获取到的数据库连接conn下的cursor()方法来创建游标
cur = conn.cursor()
# 创建数据表
cur.execute("create table student(id int ,name varchar(20),class varchar(30),age varchar(10))")
# 插入一条数据
cur.execute("insert into student values('3','Amy','class 2 grade 1','10')")
# 也可以用如下方法插入数据,方便对这条语句中的值做修改
sqli="insert into student values(%s, %s, %s, %s)"
cur.execute(sqli,('4','Wanghe','class 4 grade 2','11'))
# 一次插入多条记录
sqli="insert into student values(%s,%s,%s,%s)"
cur.executemany(sqli,[
('2','Jamson','class 2 grade 3','14'),
('2','Lily','class 3 grade 2','12'),
('2','Frame','class 2 grade 1','11'),
])
# 修改查询条件的数据
cur.execute("update student set class='class 2 garde 2' where name = 'Amy'")
# 删除查询条件的数据
cur.execute("delete from student where age='11'")
# 获得表中有多少条数据
i = cur.execute("select * from student")
print i
# 打印表中的多少数据
info = cur.fetchmany(aa)
for j in info:
print j
#cur.close()关闭游标
cur.close()
# conn.commit()方法在提交事物,在向数据库插入一条数据时必须要有这个方法,否则数据不会被真正的插入
conn.commit()
# conn.close()关闭数据库连接
conn.close()
以上为Python操作MySQL数据库的基本内容,希望对大家有所帮助!如有错误,希望大家可以提出,并多多包涵,相互学习!