Python连接MySQL数据库

第1章 课前准备

1-1 Python DB API介绍

  1. 背景:没有Python DB API之前,接口程序混乱,Python应用程序(包含sql)需要对接各种数据库;
  2. Python DB API:Python访问数据库的统一接口规范,统一对接各种不同的数据库;
  3. 内容
    Python连接MySQL数据库_第1张图片
  4. 流程
    Python连接MySQL数据库_第2张图片


1-2 Python开发MySql环境

Python连接MySQL数据库_第3张图片


第2章 Python操作数据库

2-1 Python数据库连接对象connection

  1. 连接对象:建立python客户端与数据库的网络连接;
  2. 创建方法:MySqldb.Connect(参数),支持如下6个参数:
参数名 类型 说明
host 字符串 MySql服务器地址
port 数字 MySql服务器端口
user 字符串 用户名
password 字符串 密码
db 字符串 数据库名称
charset 字符串 连接编码
  1. connection对象支持的方法
参数名 类型
cursor() 使用该连接创建并返回游标
commit() 提交当前事务
rollback() 回滚当前事务
close() 关闭连接


2-2 Python游标对象cursor

  1. 游标对象:用于执行查询,并获取结果;
  2. 游标对象cursor支持的方法;
方法名 说明
execute(op [,args]) 执行一个数据库查询和命令
fetchone() 获取结果集的下一行
fetchmany(size) 获取结果集的下几行
fetchall() 获取结果集剩下的所有行
rowcount() 最近一次execute返回数据的行数或影响行数
close() 关闭游标对象
  1. execute():执行SQL命令,将结果从数据库获取到客户端,过程如下
    Python连接MySQL数据库_第4张图片
  2. fetch*():移动rownumber,返回数据。MySqldb这个插件,是使用rownumber变量实现数据遍历的,类似于数组的指针,对数组的遍历就是靠移动指针进行遍历,下一次遍历是根据指针的位置获取对应的数据;
    Python连接MySQL数据库_第5张图片
  3. rowcount():是一个属性,可以返回缓冲区中所有数据的行数。


第3章 Python增删改查数据库

3-1 Python之select查询数据

  • select查询数据的执行流程
    Python连接MySQL数据库_第6张图片


3-2 Python之insert/update/delete更新数据库

  1. 更新数据库的执行流程


    Python连接MySQL数据库_第7张图片
  2. 事务:访问和更新数据库的一个程序执行单元,程序执行单元即为很多execute操作的集合;
  3. 事务的特点
  • 原子性:事务中的所有操作,要么都做、要么都不做;
  • 一致性:事务必须使数据库从一致性状态变到另一个一致性状态;
  • 隔离性:一个事务的执行,不能被其它事务干扰;
  • 持久性:事务一旦提交,它对数据库的改变就是永久性的。
  1. 事务的方法
  • 关闭自动commit:设置connection.autocommit(False),MySqldb插件已经默认设置commit为自动关闭;
  • 正常结束事务:connection.commit(),使前面所有的操作正常生效;
  • 异常结束事务:connection.rollback(),使前面所有的操作回到没有被执行的状态,即回滚。

3-3 Python之实例:银行转账

  • 执行流程
    Python连接MySQL数据库_第8张图片

你可能感兴趣的:(Python连接MySQL数据库)