Python数据库框架PyMySQL入门

    1. 使用了pymysql可以使用python语句对数据库进行操作;
    1. 安装:
pip install pymysql
    1. 这里借助使用Flask对象,创建app.py文件:
from flask import Flask
import pymysql
pymysql.install_as_MySQLdb()

app = Flask(__name__)
conn = pymysql.Connect(
        host = '127.0.0.1', # 主机名
        port = 3306, # 端口
        user = 'root', # 用户
        passwd = 'root', #密码
        db = 'wuhao', # 数据库名
        charset = 'utf8') # 字符集
    1. Python建立与数据的连接,事实上是建立一个MySQLdb.connect()的连接对象,通过连接对象就能和数据库进行数据交互,对象常用的方法如下:

(1) 创建游标对象并返回:cursor()

(2) 提交当前事务操作,对数据库的增、删、改、查先保存到缓存里,当执行此方法时再提交给数据库:commit()

(3) 回滚当前事务操作,取消前面操作: rollback()

(4) 关闭数据库连接:close()

    1. 建立连接后,操作数据库就需要让Python对数据库执行SQL语句, 这里是通过游标对象完成的:
cursor = conn.cursor()
sql = "select * from user"
cursor.execute(sql) # 执行sql语句
    1. 增删改查
cursor.execute():用于执行一个数据库的查询命令, 进行增删改查

cursor.fetchone():获取结果集中的下一行

cursor.fetchmany(size):获取结果集中的下(size)行

cursor.fetchall():获取结果集中剩下的所有行

cursor.rowcount():最近一次执行数据库查询命令后,返回数据的行数

cursor.close():关闭游标
    1. 执行事务:

事务可以保证数据一致性

事务应该具有4个属性:原子性一致性隔离性持久性。这四个属性通常称为ACID特性。
(1) 原子性(atomicity): 一个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么都不做

(2)一致性(consistency):事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。

(3)隔离性(isolation)。一个事务的执行不能被其他事务干扰。即一个事务内部的操作使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰

(4)持久性(durability)。持续性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。

对于支持事务的数据库, 在Python数据库编程中,当游标建立之时,就自动开始了一个隐形的数据库事务,所以我们只需要考虑提交事务即可

样例:

# SQL删除记录语句
sql = "DELETE FROM EMPLOYEE WHERE AGE > %s" % (20)
try:
    # 执行SQL语句
    cursor.execute(sql)
    # 向数据库提交
    db.commit()
except:
     # 发生错误时回滚
     db.rollback()
posted @ 2021-10-13 15:02  Taoger_Xu  阅读(804)  评论(0)    收藏  举报