`
喜欢蓝色的我
  • 浏览: 370285 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

python操作mysql数据库

 
阅读更多

MySQLdb下载地址:http://www.codegood.com/downloads

Python中的mysql操作可以使用MySQLdb模块来完成。它符合Python社区设计的Python Database API SpecificationV2.0标准,所以与其他的数据库操作的API,如SQLite等基本类似

1.连接的建立与释放

建立连接时可用connect函数,它返回一个Connection类型对象

 

conn = MySQLdb.connect(host="xx.xx.xxx.xx", user="root", passwd="root", db="test", charset="utf8")

 

connect方法常用的参数有

 

host:数据库主机名.默认是用本地主机. 

user:数据库登陆名.默认是当前用户. 

passwd:数据库登陆的秘密.默认为空. 

db:要使用的数据库名.没有默认值. 

port:MySQL服务使用的TCP端口.默认是3306.

charset:数据库编码。

 

如果在数据编码设置正确时,向数据库插入数据出现乱码时,可以设置连接的字符集参数charset。

 

释放连接时可以应用Connection类型对象的close方法。

conn.close()

 

2.Cursor对象

执行SQL语句前要获得一个指定连接的Cursor对象,由Cursor对象执行SQL查询并获取结果。

 

获得Cursor对象的方法

cur = conn.cursor()

 

在默认情况下cursor方法返回的是BaseCursor类型对象,BaseCursor类型对象在执行查询后每条记录的结果以列表(list)表示。如果要返回字典(dict)表示的记录,就要设置cursorclass参数

 

为MySQLdb.cursors.DictCursor类。

cur = conn.cursor(cursorclass=MySQLdb.cursors.DictCursor)

这个参数也可在调用connect方法建立连接时设置

 

conn = MySQLdb.connect(host = 'xx.xx.xxx.xx', user = 'root', passwd = 'root', db = 'test' cursorclass = MySQLdb.cursors.DictCursor)

 

执行结束后可以关闭cursor对象

cur.close()

 

3.查询,插入,更新、删除操作。

 

Cursor类型提供了execute方法用于执行SQL操作

execute(query [,parameters])

query是一个SQL字符串,parameters是一个序列或映射,返回值是所影响的记录数

 

查询

cur.execute('SELECT * FROM t_user_info where userid="xxx";')

cur.execute("select * from t1 where name = %(name)s and age = %(age)s", {'name':'June', 'age':27})

这里和字符串的格式化操作类似,但不管参数是什么类型,都要用'%s'

 

获取结果

获取结果集有三种方法,fetchone、fetchall和fetchmany,返回结果是一个tuple对象,tuple中的每一个元素对应查询结果中的一条记录。

fetchone()返回结果集中的下一条记录

fetchall()返回结果集中的剩余记录

fetchmany([size])返回结果集中size条记录

返回所有查询数据

for i in cur.fetchall(): 

    print i

 

插入、更新、删除

cur.execute("insert t1(name, age) values(%s, %s)", ('Jack', 32))

更新和删除的操作与更新、删除类似

 

除了execute,Cursor类还提供了executemany()方法

executemany(query [, parametersequence])

querey是一个查询字符串,parametersequence是一个参数序列。这一序列的每一项都是一个序列或映射对象。但executemany只适合插入、更新或删除操作,而不适用于查询操作。

 

cur.execute("insert t1(name, age) values(%s, %s)", (('Jack', 32), ('Junior', 24)))

 

mysql现在一般会默认InnoDB作为默认引擎,InnoDB引擎执行插入、更新、删除操作后要进行提交,才会更新数据库。

cur.commit()

 

4.其他操作

Connection类:

rollback() 回滚

 

Cursor类:

callproc(procname, args):用来执行存储过程,接收的参数为存储过程名和参数列表,返回值为受影响的行数。

nextset():移动到下一个结果集

执行查询操作或存储过程时可能返回多个结果集,例如:

cur.execute('select * from t1; select * from t2')

 

源:http://blog.sina.com.cn/s/blog_45ac0d0a010180aw.html

分享到:
评论

相关推荐

    Python操作mysql数据库

    Python操作mysql数据库

    python操作mysql数据库.pdf

    Python 操作 MySQL 数据库 Python 操作 MySQL 数据库是通过 Python DB-API 实现的,Python DB-API 为开发人员提供了数据库应用编程接口。Python 数据库接口支持非常多的数据库,可以选择适合项目的数据库,如 ...

    python操作mysql数据库上课讲义.pdf

    Python DB-API,全称为Python Database API Specification v2.0,是Python编程语言中用于数据库操作的标准接口。这个规范定义了一套标准的对象和方法,使得开发者能够以统一的方式访问不同的数据库系统,比如MySQL、...

    python操作mysql数据库的9个实例共11页.pdf

    Python操作MySQL数据库是一种常见的数据交互方式,特别是在web开发中,Python的灵活性和MySQL的强大存储功能相结合,能够构建高效的数据处理系统。以下是对标题和描述中所述知识点的详细讲解: 1. **Python MySQL库...

    完整版 Python高级开发课程 高级教程 06 Python操作MySQL数据库.pptx

    在本课程"Python高级开发课程 高级教程 06 Python操作MySQL数据库"中,我们将深入探讨如何使用Python与MySQL数据库进行交互。Python是广泛应用于数据处理和数据分析的语言,而MySQL则是一种流行的开源关系型数据库...

    Python操作MySQL数据库实例详解【安装、连接、增删改查等】

    Python操作MySQL数据库是一种常见的任务,特别是在开发Web应用或者需要存储和处理数据的系统中。本篇文章将详细阐述如何使用Python与MySQL进行交互,包括安装MySQL库、建立连接、数据库和表的操作以及数据的增删改查...

    Python 操作 MySQL 数据库.pdf

    Python 操作 MySQL 数据库.pdf

    python操作mysql数据库.py

    python操作mysql数据库.py

    python操作mysql数据库归类.pdf

    MySQLdb是Python链接MySQL数据库的一个接口,完全遵循Python数据库API规范V2.0。它是基于MySQL的C API构建的,使得Python程序能够方便地与MySQL服务器通信。如果在尝试导入MySQLdb时遇到`ImportError: No module ...

    python操作mysql数据库-精品管理资料.docx

    Python 操作 MySQL 数据库是将 Python 语言与流行的开源关系型数据库管理系统 MySQL 结合的关键技术。Python 提供了 DB-API(数据库应用编程接口),这是一个规范,定义了一系列对象和方法,使得开发者可以使用相同...

    Python:使用python读取mysql数据库 .docx

    使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库使用python读取mysql数据库...

    python操作mysql数据库分享.pdf

    Python操作MySQL数据库是常见的数据处理任务,特别是在web开发中,MySQL作为后端数据库,而Python作为脚本语言处理数据。Python提供了Python DB-API(数据库应用编程接口),这是一套规范,定义了Python程序与数据库...

Global site tag (gtag.js) - Google Analytics