首页 > Python操作数据库 阅读数:29

Python数据库接口(API)用法详解

Python 在连接及操作数据库方面,仍然表现出简单性、规范性和易操作性。在 Python Database API(PEP249) 中,定义了 Python 操作数据库需要遵守的规范,在规范中指定了模块接口、连接对象、游标对象、类对象、错误处理机制等。

Python通用接口(API)

大多数数据库都是支持 ODBC 和 ADO 的,Python 为此提供了有关的 ODBC 和 ADO 模块进行支持。目前,Python 可以方便地支持关系型数据库如 DB2、InFormix、MySQL、MsSQL、MsSQL、Access、Sybase,以及非关系型数据库如 XML、MetaKit、Durus 等的访问操作,支持嵌入式数据库 SQLite、ThinkSQL,支持数据仓库系统 IBM Netezza 等。

由此可见,Python 在应用场景上具有很大的空间。下面重点介绍连接对象和游标对象。

Python连接对象和游标对象

1) 连接对象

连接对象(Connection Object)主要用来管理数据库连接及关闭连接的对象。通过使用函数 connect( ) 获取连接对象,该函数具有多个参数,并且根据不同的数据库类型而有所不同。比如,需要访问 SQLite 和 MsSQL 数据库,则需要分别下载 SQLite 数据库模块和 MsSQL 数据库模块。connect( ) 函数的常用参数包括数据源名称、用户名称、用户密码、主机名及数据库名称等。

该函数的基本参数如下。
此外,在建立数据库连接时,其他的函数还有如下几个:
例如,可以使用以下语句连接 MySQL 数据库。
Connmysql=pymysql.connect(
    host='localhost',
    user='root',
    password='root'
    db='test',
    cursorclass=pymysql.cursors.DictCursor
)
在上述代码中,通过 connect( ) 函数连接到 test 数据库。

由 commit( ) 和 rollback( ) 函数可以知道,Python 是支持事务操作编程语言。所谓事务,就是一系列有序数据操作的动作的集合,通过事务保障了数据的一致性和有效性,当且仅当所有数据操作返回都正确时,数据才会被更新到物理数据库中;否则,通过 rollback( ) 函数取消这一组数据操作。

2) 游标对象

游标是处理数据的一种方法,可以方便地查看和处理结果集中的数据,并且提供了向前、向后浏览数据的能力,类似于 C语言中的指针,可以定位到结果集的任何位置。Python 中的游标也基于这种思想,并对其进行了扩展,不仅可以用于操作数据结果集,而且可以用于向数据库提交查询语句和调用存储过程。

使用 cursor( ) 函数获取游标对象,主要包括如下方法:

说明:数据库编程接口和 API 对大多数数据库操作是可用的,但应该针对所操作的数据库查看其相关的帮助文档。

相关文章