欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Python的Mysql编程_MySQL

程序员文章站 2023-12-30 19:21:22
...
python bitsCN.com

系统环境

Fedora 15, MySQL 5.5



安装MySQLdb模块

在Fedora环境下,我们可以很方便的使用强大的yum来安装

$yum install MySQL-python.i686



导入模块

import MySQLdb



操作数据库

1. 连接数据库

conn = MySQLdb.Connection(host='host', user='user', passwd='passwd', db='db')
conn = MySQLdb.connect(host='host', user='user', passwd='passwd', db='db')

这两种方法都可以返回连接对象。其中主要使用的参数有:

host,数据库所在的主机,默认是'localhost'

user,登录数据库的用户名,默认是当前用户

passwd,登录数据库的密码,默认为空

db,打开的数据库名,默认无

port,MySQL服务的端口,默认为3306

2. 事务相关

#提交修改
conn.commit()

#事务回滚
conn.rollback()



3.获得游标

cursor = conn.cursor(cursorclass=MySQLdb.cursors.Cursor)

cursorclass参数:

MySQLdb.cursors.Cursor, 默认值,执行SQL语句返回List,每行数据为tuple

MySQLdb.cursors.DictCursor, 执行SQL语句返回List,每行数据为Dict


4. 执行操作

「执行SQL语句」:

cursor.execute(sql, params)

sql,执行的SQL语句,需要参数的地方使用%s

params,1个普通类型或者tuple类型,sql语句中需要的参数

返回受到影响的行数

「调用存储过程」:

cursor.callproc(procname, args)

procname,存储过程的名称

args,传递的参数

返回受到影响的行数


5. 接受返回值

#返回单行数据
result = cursor.fetchone()

#返回所有数据
result = cursor.fetchall()

前面提到,如果获得cursor的时候使用的是MySQLdb.cursors.DictCursor,则返回的每行数据是Dict类型。其中每对键值都是“字段名:数据”

如果前面一次执行了多个select语句,那么sursor会返回多个结果集,cursor提供了对应的方法来移动到下一个结果集

cursor.nextset()


6. 关闭连接

养成良好的习惯,不在使用数据库的时候,及时关闭游标对象和数据库连接对象

cursor.close()
conn.close()



参考

MySQLdb的用户指南:http://mysql-python.sourceforge.net/MySQLdb.html







  

bitsCN.com

上一篇:

下一篇: