@ 作者:达内 Python 教学部,吕泽
@ 编辑:博主,Discover304


:star2:pymysql模块

pymysql是一个第三方库,如果自己的计算机上没有可以在终端使用命令进行安装,$sudo pip3 install pymysql

pymysql使用流程

  1. 建立数据库连接:db = pymysql.connect(...)
  2. 创建游标对象:cur = db.cursor()
  3. 游标方法: cur.execute("insert ....")
  4. 提交到数据库或者获取数据 : db.commit() / cur.fetchall()
  5. 关闭游标对象 :cur.close()
  6. 断开数据库连接 :db.close()

:star:常用函数

  • 链接数据库
    1
    2
    3
    4
    5
    6
    7
    8
    db = pymysql.connect(参数列表)

    host :主机地址,本地 localhost
    port :端口号,默认3306
    user :用户名
    password :密码
    database :库
    charset :编码方式,推荐使用 utf8
  • 创建游标
    1
    2
    cur = db.cursor() 
    返回值:返回游标对象,用于执行具体SQL命令
  • 执行SQL命令
    1
    2
    3
    4
    cur.execute(sql,args_list) 
    参数:
    sql: sql语句
    args_list: 列表,用于给sql语句传递参量
  • 多次执行SQL命令,执行次数由列表中元组数量决定
    1
    2
    3
    4
    cur.executemany(sql命令,args_list)
    参数:
    sql: sql语句
    args_list: 列表中包含元组 每个元组用于给sql语句传递参量,一般用于写操作。
    • 提交到数据库执行:db.commit()(必须支持事务操作才有效)
    • 回到原来的数据形态:db.rollback()(必须支持事务操作才有效)
  • 获取查询结果集的第一条数据:cur.fetchone()
    • 查找到返回一个元组否则返回None
  • 获取前n条查找到的记录:cur.fetchmany(n)
    • 返回结果为元组嵌套元组, ((记录1),(记录2)),查询不到内容返回空元组。
  • 获取所有查找到的记录:cur.fetchall()
    • 返回结果形式同上。
  • 关闭游标对象:cur.close()
  • 关闭数据库连接:db.close()

:star:数据库文件存储

  • 存储文件路径
    • 优点:节省数据库空间,提取方便
    • 缺点:文件或者数据库发生迁移会导致文件丢失(路径丢失,也就是说迷路了)
  • 存储文件本身
    • 优点:安全可靠,数据库在文件就在。就算数据库搬家了,数据也不会丢失。
    • 缺点:占用数据库空间大,文件存取效率低