详解Python 数据库的Connection、Cursor两大对象

yipeiwu_com6年前Python基础

Python 数据库图解流程

这里写图片描述

Connection、Cursor比喻

这里写图片描述

Connection()的参数列表

host,连接的数据库服务器主机名,默认为本地主机(localhost)。user,连接数据库的用户名,默认为当前用户。passwd,连接密码,没有默认值。db,连接的数据库名,没有默认值。conv,将文字映射到Python类型的字典。
MySQLdb.converters.conversionscursorclass,cursor()使用的种类,默认值为MySQLdb.cursors.Cursor。compress,启用协议压缩功能。named_pipe,在windows中,与一个命名管道相连接。init_command,一旦连接建立,就为数据库服务器指定一条语句来运行。read_default_file,使用指定的MySQL配置文件。read_default_group,读取的默认组。unix_socket,在unix中,连接使用的套接字,默认使用TCP。

port,指定数据库服务器的连接端口,默认是3306。

这里写图片描述

连接对象的db.close()方法可关闭数据库连接,并释放相关资源。

连接对象的db.cursor([cursorClass])方法返回一个指针对象,用于访问和操作数据库中的数据。连接对象的db.begin()方法用于开始一个事务,如果数据库的AUTOCOMMIT已经开启就关闭它,直到事务调用commit()和rollback()结束。连接对象的db.commit()和db.rollback()方法分别表示事务提交和回退。指针对象的cursor.close()方法关闭指针并释放相关资源。指针对象的cursor.execute(query[,parameters])方法执行数据库查询。指针对象的cursor.fetchall()可取出指针结果集中的所有行,返回的结果集一个元组(tuples)。指针对象的cursor.fetchmany([size=cursor.arraysize])从查询结果集中取出多行,我们可利用可选的参数指定取出的行数。指针对象的cursor.fetchone()从查询结果集中返回下一行。指针对象的cursor.arraysize属性指定由cursor.fetchmany()方法返回行的数目,影响fetchall()的性能,默认值为1。

指针对象的cursor.rowcount属性指出上次查询或更新所发生行数。-1表示还没开始查询或没有查询到数据。

这里写图片描述

Cursor

常用方法:

close():关闭此游标对象fetchone():得到结果集的下一行fetchmany([size = cursor.arraysize]):得到结果集的下几行fetchall():得到结果集中剩下的所有行excute(sql[, args]):执行一个数据库查询或命令

excutemany(sql, args):执行多个数据库查询或命令

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

常用属性:

connection:创建此游标对象的数据库连接arraysize:使用fetchmany()方法一次取出多少条记录,默认为1

总结

以上所述是小编给大家介绍的Python 数据库的Connection、Cursor两大对象,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

github配置使用指南

1.建立项目,进入项目文件夹 2.初始化ssh key 参见官网指南.(本机生成一对key,public key传到官网sshkey下面) https://help.github.com...

使用python opencv对目录下图片进行去重的方法

版本: 平台:ubuntu 14 / I5 / 4G内存 python版本:python2.7 opencv版本:2.13.4 依赖: 如果系统没有python,则需要进行安装 sudo...

python用for循环求和的方法总结

Python中可以使用for循环实现累加求和 for循环语法: for 变量 in range(x): 循环需要执行的代码 如下实现1到n求和: def main():...

浅要分析Python程序与C程序的结合使用

浅要分析Python程序与C程序的结合使用

Python 是一种用于快速开发软件的编程语言,它的语法比较简单,易于掌握,但存在执行速度慢的问题,并且在处理某些问题时存在不足,如对计算机硬件系统的访问,对媒体文件的访问等。而作为软件...

在MAC上搭建python数据分析开发环境

最近工作转型到数据开发领域,想在本地搭建一个数据开发环境。自己有三年python开发经验,马上想到使用numpy、scipy、sklearn、pandas搭建一套数据开发环境。 ubun...