本篇为使用python连接并操作MySQL数据库,涉及PyMySql模块。
安装PyMySql
模块
方法一:
pip3 install pymsql
方法二:
点击pycharm/settings/Project Iterpreter
右侧的加号,搜索pymysql
然后点击 Install Package
PyMySql
模块
简介
PyMySQL 是一个纯 Python 实现的 MySQL 客户端操作库,支持事务、存储过程、批量执行等。
基本使用
连接MySQL
1 | conn = pymysql.Connection(host='127.0.0.1', user='root',password='2296',database ='test',charset='utf8') |
获取游标
1 | cursor = connection.cursor() |
执行SQL
1 | cursor.execute(sql, args) 执行单条 SQL |
补充:
- INSERT、UPDATE、DELETE 等修改数据的语句需手动执行
connection.commit()
完成对数据修改的提交。 - 对于大段文字(包含单引号、双引号等特殊符号),我们将它放在
args
中,而不是直接手动拼接在SQL语句中。
简单的一个例子:
1 | import pymysql |
创建表
1 | import pymysql |
操作数据
插入
1 | import pymysql |
建议:将变量传给 args
,而不是手动拼接!
查询
1 | # 执行查询 SQL |
更新
1 | import pymysql |
删除
1 | import pymysql |
执行事务
事务具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。
- 原子性(atomicity)。一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做。
- 一致性(consistency)。事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
- 隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
- 持久性(durability)。持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。
1 | # 删除年龄大于20的人 |
SQLhelper
- 将原生sql封装起来
1 | import pymysql |