Python操作数据库之数据库编程接口

目录
  • 一、前言
  • 二、连接对象
    • 1.获取连接对象
    • 2.连接对象的方法
  • 三、游标对象

一、前言

在项目开发中,数据库应用必不可少。虽然数据库的种类有很多,如SQLite、MySQL、Oracle等,但是它们的功能基本是一样都是一样的,为对数据库统一的操作,大多数语言都提供了简单的、标准化的接口(API)。在Python Database API 2.0规范中,定义了Python数据库API接口的各个部分,如模块接口、连接对象、游标对象、类型对象和构造器、DB API的可选扩展以及可选的错误处理机制等。本文将重点介绍数据库的连接对象和游标对象。

二、连接对象

数据库连接对象(Connection Object)主要提供获取数据库游标对象和提交/回滚事务的方法,以及如何关闭数据库连接。

1.获取连接对象

如何获取连接对象呢?这就需要使用connect()函数。该函数有多个参数,具体使用那个参数,取决于使用的数据库类型。例如,需要访问Oracle数据库和MySQL数据库,必须同时下载Oracle和MySQL数据库模块。这些模块在获取连接对象时,都需要使用connect()函数。

connect()函数常用的参数及说明如下表:

例如,使用PyMySQL模块连接MySQL数据库,示例代码如下:

import pymysql

conn = pymysql.connect(
    host="localhost",
    password="123456",
    db="test",
    charset="utf8",
    cursorclass=pymysql.cursors.DictCursor)

说明: 上述代码中,pymysql.connect()方法使用的参数与上表并不完全相同。在使用时,要以具体的数据库模块为准。

2.连接对象的方法

connect()函数返回连接对象,这个对象表示目前和数据库的会话,连接对象支持的方法如下表所示:

方法名说明close()关闭数据库连接commit()提交事务rollback()回滚事务cursor()获取游标对象,操作数据库,如执行DML操作,调用存储过程等

事务主要用于处理数据量大、复杂度高的数据。如果操作的是一系列的动作,比如小菜鸡给小白转账,

有如下2个操作:

  • 小菜鸡的账户金额减少
  • 李四账户金额增加

这时使用事务可以维护数据库的完整性,保证2个操作要么全部执行,要么全部不执行。

三、游标对象

游标对象(Cursor Object)代表数据中的游标,用于指示抓取数据操作的上下文。主要提供执行SQL语句、调用存储过程、获取查询结果等方法。

如何获取游标对象呢?通过连接对象的cursor()方法,可以获取到游标对象。

游标对象的属性如下所示:

  • description:数据库列类型和值的描述信息。
  • rowcount:回返结果的行数统计信息,如SELECT,UPDATE,CALLPROC等。

游标对象的方法如下表所示:

方法名说明callproc(procname,[,parameters])调用存储过程,需要数据库支持close()关闭当前游标execute(operation,[,parameters])执行数据库操作,SQL语句或者数据库命令executemany(operation,seq_of_params)用于批量操作,如批量更新fetchone()获取查询结果的下一条记录fetchmany(size)获取指定量的记录fetchall()获取结果集的所有记录nextset()跳至下一个可用的结果集arraysize指定使用fetchmany()获取的行数,默认为1setinputsizes(sizes)设置在调用execute*()方法时分配的内存区域大小setoutputsize(sizes)设置列缓冲区大小,对大数据列如LONGS和BLOBS尤其有用

到此这篇关于Python操作数据库之数据库编程接口的文章就介绍到这了,更多相关Python编程接口内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python 中面向接口编程详情

    目录 前言 概述 Python 接口 非正式接口 前言 接口在软件工程扮演重要角色,随着应用程序的功能不断扩展,代码库的更新和改变也难以管理.在许多情况下,会发现有一些看起来非常相似,但却不相关的类,这可能会导致一些难于维护.在本次分享中,将看到你如何使用 Python 接口来帮助确定. 主要从下面几个方面了解内容: 了解接口的工作原理和创建 Python 接口的注意事项 理解接口在像 Python 这样的动态语言中重要性 实现一个非正式的 Python 接口 使用 abc.ABCMeta 和 

  • 如何使用Python基于接口编程的方法实现

    目录 先通过一个实例来了解下接口到底解决什么问题. 定义一个接口 定义类,继承接口 Python 抽象基类的介绍 (PEP3119) 软件行业,唯一不变的就是变化.产品经理会变,产品需求会变,代码同样要跟着变. 不同的代码设计,变化所带来的工作量更是不同,有的每改一次需求,近乎一次重构,而有的只需要修改一个配置文件,或者在类里添加一行代码.当然比较好的代码设计,由于有着良好的可扩展性,高内聚,低耦合,因而易维护, 以少变应万变.如果才能有好的代码设计,就需要我们学习设计模式.今天为你分享的是在P

  • Python中的面向接口编程示例详解

    前言 "面向接口编程"写 Java 的朋友耳朵已经可以听出干茧了吧,当然这个思想在 Java 中非常重要,甚至几乎所有的编程语言都需要,毕竟程序具有良好的扩展性.维护性谁都不能拒绝. 最近无意间看到了我刚开始写 Python 时的部分代码,当时实现的需求有个很明显的特点: 不同对象具有公共的行为能力,但具体每个对象的实现方式又各不相同. 说人话就是商户需要接入平台,接入的步骤相同,但具体实现不同. 作为一个"资深" Javaer,需求还没看完我就洋洋洒洒的把各个实现

  • Python操作使用MySQL数据库的实例代码

    Python 操作 MySQL 配置 win_64 Ubuntu14.04 Python3.x pip安装pymysql模块 直接使用pip安装 pip install pymysql win64上直接在cmd中执行 连接本地数据库 使用模块pymysql连接数据库 #!/usr/bin/python # coding=utf-8 import pymysql # 连接本地数据库 conn = pymysql.connect(host='localhost', port=3306, user='

  • python 连接各类主流数据库的实例代码

    本篇博文主要介绍Python连接各种数据库的方法及简单使用 包括关系数据库:sqlite,mysql,mssql 非关系数据库:MongoDB,Redis 代码写的比较清楚,直接上代码 1.连接sqlite # coding=utf-8 # http://www.runoob.com/sqlite/sqlite-python.html import sqlite3 import traceback try: # 如果表不存在,就创建 with sqlite3.connect('test.db')

  • Python操作数据库之数据库编程接口

    目录 一.前言 二.连接对象 1.获取连接对象 2.连接对象的方法 三.游标对象 一.前言 在项目开发中,数据库应用必不可少.虽然数据库的种类有很多,如SQLite.MySQL.Oracle等,但是它们的功能基本是一样都是一样的,为对数据库统一的操作,大多数语言都提供了简单的.标准化的接口(API).在Python Database API 2.0规范中,定义了Python数据库API接口的各个部分,如模块接口.连接对象.游标对象.类型对象和构造器.DB API的可选扩展以及可选的错误处理机制等

  • Python操作SQLite数据库的方法详解

    本文实例讲述了Python操作SQLite数据库的方法.分享给大家供大家参考,具体如下: SQLite简单介绍 SQLite数据库是一款非常小巧的嵌入式开源数据库软件,也就是说没有独立的维护进程,所有的维护都来自于程序本身.它是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tc

  • python 专题九 Mysql数据库编程基础知识

    在Python网络爬虫中,通常是通过TXT纯文本方式存储,其实也是可以存储在数据库中的:同时在WAMP(Windows.Apache.MySQL.PHP或Python)开发网站中,也可以通过Python构建网页的,所以这篇文章主要讲述Python调用MySQL数据库相关编程知识.从以下几个方面进行讲解: 1.配置MySLQ 2.SQL语句基础知识 3.Python操作MySQL基础知识 4.Python调用MySQL示例 一. 配置MySQL 首先下载mysql-5.0.96-winx64,安装

  • Python操作Sql Server 2008数据库的方法详解

    本文实例讲述了Python操作Sql Server 2008数据库的方法.分享给大家供大家参考,具体如下: 最近由于公司的一个项目需要,需要使用Sql Server 2008数据库,开发语言使用Python,并基于windows平台上的Wing IDE4.0进行. 之前并未使用过Sql Server数据库,这次也当作一次练手,并把这次数据库前期开发过程中遇到的一些问题进行记录. 一.关于pyodbc库和pymssql库的选择 在使用python语言进行开发之前,需要确定使用哪种第三方的数据库操作

  • Python操作SQLite数据库的方法详解【导入,创建,游标,增删改查等】

    本文实例讲述了Python操作SQLite数据库的方法.分享给大家供大家参考,具体如下: SQLite简介 SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中.它是D.RichardHipp建立的公有领域项目.它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了.它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很多程序语言相结合,比如 Tcl.C

  • Python操作Access数据库基本步骤分析

    本文实例分析了Python操作Access数据库基本步骤.分享给大家供大家参考,具体如下: Python编程语言的出现,带给开发人员非常大的好处.我们可以利用这样一款功能强大的面向对象开源语言来轻松的实现许多特定功能需求.比如Python操作Access数据库的功能实现等等.在Python操作Access数据库之前,首先,你应安装了Python和Python for Windows extensions. 步骤之1.建立数据库连接 import win32com.client conn = wi

  • Python实现mysql数据库更新表数据接口的功能

    前言 昨天,因为项目需求要添加表的更新接口,来存储预测模型训练的数据,所以自己写了一段代码实现了该功能,在开始之前,给大家分享python 操作mysql数据库基础: #coding=utf-8 import MySQLdb conn= MySQLdb.connect( host='localhost', port = 3306, user='root', passwd='123456', db ='test', ) cur = conn.cursor() #创建数据表 #cur.execute

  • Python操作MySQL数据库的三种方法总结

    1. MySQLdb 的使用 (1) 什么是MySQLdb? MySQLdb 是用于 Python 连接 MySQL 数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的. (2) 源码安装 MySQLdb: https://pypi.python.org/pypi/MySQL-python $ tar zxvf MySQL-python-*.tar.gz $ cd MySQL-python-* $ python setup.py buil

随机推荐