美文网首页
pymysql使用

pymysql使用

作者: 瘦不下去了 | 来源:发表于2021-05-24 15:48 被阅读0次

    一 pymysql

    1.1 pymysql介绍

    pymysql是一个连接mysql数据库的第三方模块,可作为连接mysql数据库的客户端,对数据库进行增删改查操作

    1.2 pymysql作用

    作为mysql客户端操作数据

    1.3 pymysql安装要求

    • python版本大于3.x
    • mysql版本大于5.5

    1.4 pymysql安装

    使用命令行窗口或者在集成工具(如Pycharm)的终端输入以下命令

    pip install pymysql
    
    • 使用WIN+R打开运行框,输入cmd,敲击回车键,在弹出的命令行窗口中输入命令
      image-20210524105151233.png
      image-20210524104838020.png
    • Pycharm中安装pymysql


      image-20210524105452177.png
    • 如果使用的是Anaconda,打开Anaconda Prompt,输入安装命令
      image-20210524110004075.png
      image-20210524110048116.png

    1.5 pymysql操作流程

    1. 导入pymysql
    2. 使用pymysql的connect()方法连接数据,返回连接对象
    3. 使用连接对象创建游标对象(用于操作sql)
    4. 准备写sql语句(eg:select * from student)
    5. 使用游标对象执行sql(发送)(没有查询数据返回受影响的行数)
    6. 有查询数据使用游标获取
    7. 关闭游标(先)和数据库连接(后)

    二 数据库连接对象相关操作

    1. 连接语法
    连接对象 = pymysql.connect(
    host='连接地址 localhost , ip 地址',
    port=端口号,默认3306,
    user='用户名',
    password='密码',
    database='数据库名',
    charset='utf8'
    )
    
    1. 创建游标对象
    游标对象=连接对象.cursor(cursor=None)
    参数说明:指定游标的类型
    'Cursor':默认
    'SSCursor':默认基础上采用的生成器
    'DictCursor':字典类型游标
    'SSDictCursor':在字典采用生成器方式
    
    1. 切换数据库
    数据库连接对象.select_db(数据库名)
    
    1. 关闭连接
    连接对象.close()
    
    1. 事务操作
    连接对象.begin():开启事务,默认开启
    连接对象.commit():提交事务
    连接对象.rollback():回滚事务
    注意:pymysql鉴于安全考虑,所有的写(insert,delete,update)操作都必须使用事务
    

    三 游标对象使用

    游标是SQL的一个内存工作区,由系统或用户以变量的形式定义。游标的作用就是用于临时存储从数据库中提取的数据块。在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库。这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率。

    1. 执行sql语句
    游标对象.execute(sql,args=None)
    a.完整sql语句则直接传第一个参数
    (如果通过传入的形式拼接的sql语句,容易造成sql注入风险,sql注入是恶意用于构建sql参数传入,从而非法获取数据)
    b.如果sql语句是使用%s占位时则使用第二个参数args(实际数据)
    
    1. 获取数据
    游标对象.fetchall():获取所有
    游标对象.fetchone():获取下一条
    游标对象.fetchmany():获取指定条数据
    
    1. 关闭游标
    游标对象.close()
    

    相关文章

      网友评论

          本文标题:pymysql使用

          本文链接:https://www.haomeiwen.com/subject/uxwrrktx.html