Python的Mysql编程


python对数据库的操作,可能对我有些用处!我想用它来灵活的把access的数据导入到mysql里面去!
 
导入模块
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()
 
第零空间版权所有

相关内容

    暂无相关文章

评论关闭