千家信息网

Python标准库MySQL工作流程是怎么样的

发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,本文主要给大家介绍Python标准库MySQL工作流程是怎么样的,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下Python标准库MySQL工作
千家信息网最后更新 2025年01月31日Python标准库MySQL工作流程是怎么样的

本文主要给大家介绍Python标准库MySQL工作流程是怎么样的,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下Python标准库MySQL工作流程是怎么样的 吧。

MySQLdb工作流程如下:


connection

connection方法用于创建客户端与数据库的网络连接.

语法:

MySQLdb.Connect(参数)

参数

参数类型说明
host字符串MySQL云服务器地址
port整型MySQL云服务器端口号
user字符串MySQL数据库用户名
passwd字符串MySQL数据库密码
db字符串MySQL数据库库名
charset字符串连接所使用的字符集

例如:

# 导入MySQLdb模块>>> import MySQLdb# 创建一个Connect连接>>> conn = MySQLdb.Connect(host='127.0.0.1', user='root', passwd='as', db='USER', port=3306, charset="utf8")>>> cursor = conn.cursor()>>> print(cursor)>>> print(conn)<_mysql.connection open to '127.0.0.1' at 15b1518># 关闭连接>>> conn.close()>>> print(conn)<_mysql.connection closed at 15b1518>

connection对象支持的方法

方法名说明
cursor()使用该连接创建并返回游标
commit()提交当前事务
rollback()回滚当前事务
close()关闭连接

cursor

cursor用户执行查询和获取结果,执行流程如下:

cursor对象所支持的方法

参数名说明
execute("SQL")执行的SQL语句
fefchone()获取结果的下一行
fefchmany(size)获取结果的下几行
fefchall()获取结果剩下的所有行
rowcount最近一次execute返回数据的行数或影响的行数
close()关闭游标对象

事务

访问额更新数据库的一个程序执行单元,执行单元指的就是很多操作的集合,里面的每个操作都是用来访问个更新数据库.

  • 原子性: 事务中包括的诸多操作要么都做要么都不做

比如银行转账,A用户向B用户转账100,A-100和B+100这两个操作,要么都做,要么都不操作

  1. 一致性: 事务必须使数据库从一致性状态变到另一个一致性状态

  2. 隔离性: 一个事务的执行不能被其他事务干扰

  3. 持久性: 事务一旦提交,他对数据库的改变是永久性的

开发中怎样使用事务?

  1. 关闭自动commit: 设置conn.autocommit(False),MySQLdb默认已经为False

  2. 正常结束事务: conn.commit()

  3. 异常结束事务: conn.rollback()

实例

  • SELECT查询数据

先创建一个user表:

CREATE DATABASE USER;USE USER;CREATE TABLE `user` (`userid` INT(11) NOT NULL AUTO_INCREMENT,`username` VARCHAR(100) DEFAULT NULL,PRIMARY KEY (`userid`)) ENGINE=INNODB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;

插入以下内容

INSERT INTO user(userid, username) VALUES(1, 'name1');INSERT INTO user(userid, username) VALUES(2, 'name2');INSERT INTO user(userid, username) VALUES(3, 'name3');INSERT INTO user(userid, username) VALUES(4, 'name4');INSERT INTO user(userid, username) VALUES(5, 'name5');

查看数据

mysql> SELECT * FROM user;+--------+----------+| userid | username |+--------+----------+|      1 | name1    ||      2 | name2    ||      3 | name3    ||      4 | name4    ||      5 | name5    |+--------+----------+5 rows in set (0.00 sec)
>>> import MySQLdb>>> conn = MySQLdb.Connect(host='127.0.0.1', user='root', passwd='as', db='USER', port=3306, charset="utf8")>>> cursor = conn.cursor()>>> SQL = "SELECT * FROM user"# 返回获取到的多少行>>> cursor.execute(SQL)5# 输出获取到的行数>>> print(cursor.rowcount)5# 返回第一条数据>>> cursor.fetchone()(1, 'name1')# 返回两条数据>>> cursor.fetchmany(2)((2, 'name2'), (3, 'name3'))# 返回剩下的所有数据>>> cursor.fetchall()((4, 'name4'), (5, 'name5'))
  • insert/update/delete

流程图:

>>> import MySQLdb>>> conn = MySQLdb.Connect(host='127.0.0.1', user='root', passwd='as', db='USER', port=3306, charset="utf8")>>> cursor = conn.cursor()>>> cursor.execute("INSERT INTO user(userid, username) VALUES(50, 'name50')")1>>> cursor.execute("UPDATE user SET username='as' WHERE userid=1")1>>> cursor.execute("DELETE FROM user WHERE userid=2")1>>> conn.commit()>>> cursor.close()>>> conn.close()

查看数据库表内容

mysql> SELECT * FROM user;+--------+----------+| userid | username |+--------+----------+|      1 | as       ||      3 | name3    ||      4 | name4    ||      5 | name5    ||     50 | name50   |+--------+----------+5 rows in set (0.00 sec)

#Python标准库 #Mysqldb

看完以上关于Python标准库MySQL工作流程是怎么样的,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的行业资讯栏目的。

数据 事务 数据库 流程 字符 字符串 工作流程 标准 工作 参数 方法 用户 结果 要么 一致 一致性 内容 对象 单元 服务器 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 东土科技 工业互联网白皮书 网络安全人民警察心得体会 魔兽世界无法转入服务器 数据库唯一索引用法和场景 云服务器找不到数据库 dnf服务器喇叭为什么会掉价 数据库两个表不同怎么排序 软件开发与设计有什么课程 行数据库转列数据库 福建无有网络技术有限公司招聘 宜员网络技术有限公司介绍 郑州嵌入式软件开发价钱 删除数据库的操作步骤 风远网络技术工作室 uinapp表单提交到云数据库 搜狐网络安全构建和谐校园手抄报 青少年大数据库在哪里登录 网络安全监测措施有哪些 互联网科技与创新论文 江苏好的软件开发售后保障 tomcat连接数据库 公司食品网络安全制度 前端可以查数据库吗 河南大数据软件开发哪家可靠 青岛铭鼎网络技术有限公司 专业做pos机软件开发 广州系统软件开发要多少钱 文件服务器迁移到nas 外包软件开发公司 青少年大数据库在哪里登录
0