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

yipeiwu_com5年前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设计】网站的支持!

相关文章

跟老齐学Python之重回函数

函数的基本结构 Python中的函数基本结构: 复制代码 代码如下: def 函数名([参数列表]):     语句  几点说明:  ...

python3设计模式之简单工厂模式

在Python3环境下,调试实现了《大话设计模式》中简单工厂模式,通过定义单独的工厂类,完成对具体的产品的实例化,参考链接 具体实现见代码: #!/usr/bin/env pytho...

Python升级提示Tkinter模块找不到的解决方法

一、安装tkinter 在Linux中python默认是不安装Tkinter模块, 复制代码 代码如下: [root@li250-193 ~]# python Python 2.6.6...

Python实现的NN神经网络算法完整示例

Python实现的NN神经网络算法完整示例

本文实例讲述了Python实现的NN神经网络算法。分享给大家供大家参考,具体如下: 参考自Github开源代码:https://github.com/dennybritz/nn-fro...

django实现同一个ip十分钟内只能注册一次的实例

很多小伙伴都会有这样的问题,说一个ip地址十分钟内之内注册一次,用来防止用户来重复注册带来不必要的麻烦 逻辑: 取ip,在数据库找ip是否存在,存在判断当前时间和ip上次访问时间之差,小...