iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >python数据库操作之PyMysql怎么使用
  • 280
分享到

python数据库操作之PyMysql怎么使用

2023-07-05 08:07:33 280人浏览 独家记忆
摘要

本文小编为大家详细介绍“python数据库操作之PyMysql怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python数据库操作之PyMysql怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。P

本文小编为大家详细介绍“python数据库操作之PyMysql怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python数据库操作之PyMysql怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

    Pymysql使用详解

    在编写小脚本时,PyMysql是快速连接并操作数据库的一个不错选择。

    安装

    pip3 install PyMysql# 可使用 pip list 查看此环境安装了哪些第三方库    pip list | grep PyMysql

    使用

    import pymysql
    连接数据库

    使用connect函数创建连接对象,此连接对象提供关闭数据库、事务回滚等操作

    一般传参为:host, user, passWord, port(默认为3306), database(想要连接的数据库名)

    db = pymysql.connect(host='127.0.0.1',                     user='root',                     password='pwd',                     database='database_name')

    连接对象的常见方法

    方法名说明
    cursor()获取游标对象,操作数据库,如执行DML操作,调用存储过程等
    commit()提交事务
    rollback()回滚事务
    close()关闭数据库连接
    操作数据库

    操作数据库主要使用cursor游标对象,对数据库进行操作

    cursor游标对象的常见方法

    方法名说明
    close()关闭当前游标对象
    execute(query)执行数据库操作,如sql语句或数据库命令
    executemany(query,params)用于批量操作,如:批量更新
    fetchone()获取查询结果集中的下一条记录
    fetchmany(size)获取查询结果集中指定数量的记录,size默认为1
    fetchall()获取查询结果集中所有记录
    nextset()跳至下一个可用的结果集

    fetchone(),fetchmany(size),fetchall() 三者的返回值都是元组 或 元组的嵌套 查

    查询主要获取结果集,注意fetchone 得到的是元组, fetchmany(size),fetchall()得到的是元组的嵌套

    注意:

    如果既要使用python的字符串解析%,sql语句中又包含sql的模糊查询占位符%, 模糊查询使用%%即可,这样不会报错

    import pymysql# 创建数据库连接对象db = pymysql.connect(host='127.0.0.1',                     user='root',                     password='pwd',                     database='database_name')# 创建游标对象cursor = db.cursor()table_name = 'map_point'sql = "SELECT * FROM %s WHERE username LIKE 'DL%%' " % table_nametry:    cursor.execute(sql)  # 执行sql语句,也可执行数据库命令,如:show tables    result = cursor.fetchall()  # 所有结果    print(result)except Exception as e:    db.rollback()    print("查询失败")    print(e)finally:    cursor.close()  # 关闭当前游标    db.close()  # 关闭数据库连接

    循环查询:

    在一些场景中,需要进行循环查询,判断,此时在执行完execute查询语句后,务必进行commit提交,否则每次查询到的数据都是之前查询结果的快照,也就是旧数据。

    或者采用第二种方案,创建connect连接时,增添autocommit=True属性,自动进行commit提交。

    增,删,改

    增删改需要有提交事务的操作,查不需要提交事务,但如果循环查询,务必提交事务,否则结果都是重复的

    创建连接对象——db= pymysql()

    创建cursor游标对象——cur = db.cursor()

    数据操作——cur.execute(sql)

    提交连接事务——db.commit()

    关闭cursor游标对象——cur.close()

    关闭连接对象——db.close( )

    import pymysql# 创建数据库连接对象db = pymysql.connect(host='127.0.0.1',                     user='root',                     password='pwd',                     database='database_name')# 创建游标对象cursor = db.cursor()table_name = 'table_name 'user_id = 'yyy'user_no = 'xxx'sql = "UPDATE %s SET user_no = '%s' WHERE user_id = '%s'" % (table_name, user_no, user_id)try:    cursor.execute(sql)  # 执行sql语句,也可执行数据库命令,如:show tables    db.commit()  # 增删改,必须执行事务    print("数据更新成功")except Exception as e:    db.rollback()  # 若出现失败,进行回滚    print("数据更新失败")    print(e)finally:    cursor.close()  # 关闭当前游标    db.close()  # 关闭数据库连接

    使用循环批量更新

    db = pymysql.connect(host='127.0.0.1',                     user='root',                     password='pwd',                     database='database_name')table_name = 'table_name'update_list = ['xxx2', 'xxxx3']condition_list = ['xxx', 'xxx1']# 条件集合,更新集合长度相等时可使用,可根据其他情况重新编写cursor = db.cursor()for i in range(len(condition_list)):    sql = "UPDATE %s SET user_no = '%s' WHERE user_id = '%s'" % (table_name, update_list[i],                                                                                 condition_list[i])    print('执行sql语句:' + sql)    try:        cursor.execute(sql)        db.commit()        print("数据更新成功" + str(i+1) + '条')    except Exception as e:        db.rollback()        print("数据更新失败")        print(e)cursor.close()db.close()

    使用executemany(query, param) 批量更新

    params为每条记录的维度,可为嵌套数组和元组

    注意:sql语句中需要更改的数据不管什么类型,统一使用%s作为占位符,不需要加引号

    # 创建数据库连接对象db = pymysql.connect(host='127.0.0.1',                     user='root',                     password='pwd',                     database='database_name')# 创建游标对象cursor = db.cursor()update_list = ['a', 'b']condition_list = ['a1', 'b1']# 条件数组和需要更新的数据数组是分开的,因为param需要以每条的维度,所以可以使用拉链函数合并params = zip(update_list, condition_list) # 或 param = [['a', 'a1'], ['b', 'b1']]sql = "UPDATE map_point SET storageLocation_no = %s WHERE position_id = %s"  # 注意 这里的 占位%s 都不用加引号try:    cursor.executemany(sql, params)  # 执行sql语句    db.commit()  # 执行事务    print("数据批量更新成功")except Exception as e:    db.rollback()    print("数据更新失败")    print(e)finally:    cursor.close()  # 关闭当前游标    db.close()  # 关闭数据库连接

    读到这里,这篇“python数据库操作之PyMysql怎么使用”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注编程网数据库频道。

    您可能感兴趣的文档:

    --结束END--

    本文标题: python数据库操作之PyMysql怎么使用

    本文链接: https://www.lsjlt.com/news/350513.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • python数据库操作之PyMysql怎么使用
      本文小编为大家详细介绍“python数据库操作之PyMysql怎么使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“python数据库操作之PyMysql怎么使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。P...
      99+
      2023-07-05
    • python怎么操作pymysql数据库
      本篇内容主要讲解“python怎么操作pymysql数据库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python怎么操作pymysql数据库”吧!一、安装pip install&n...
      99+
      2023-06-30
    • python数据库操作指南之PyMysql使用详解
      目录Pymysql使用详解安装使用连接数据库操作数据库总结PyMysql使用详解 在编写小脚本时,PyMysql是快速连接并操作数据库的一个不错选择。 安装 pip3 install PyMysql # 可使用 pip ...
      99+
      2023-03-02
      pymysql使用教程 pymysql用法 pymysql怎么用
    • 【Python】系列模块之pymysql操作MySQL 数据库
      目录 一、安装pymysql 二、连接数据库 三、数据库操作 3.1 查询 3.2 更新 3.3 使用循环批量更新  Python 系列文章学习记录:  Python系列之Windows环境安装配置_开着拖拉机回家的博客-CSDN博客 ...
      99+
      2023-09-03
      数据库 python mysql pymysql
    • Python数据库操作 ---- pymysql教学
      文章目录 前提准备连接数据库创建数据库创建数据表、插入数据查询数据更新数据删除数据实战应用总结 前提准备 安装mysql 在使用pymysql的前提就是又一个mysql数据库,这个数据库可以是本地数据库也可以是远程的数据...
      99+
      2023-08-18
      数据库 mysql sql
    • python 实现 pymysql 数据库操作方法
      目录一、安装二、连接数据库三、创建数据库四、创建数据表五、插入一条数据六、插入多条数据七、数据统计八、获取表名信息九、获取单条数据十、查询多条数据十一、查询所有数据十二、上下文管理一...
      99+
      2024-04-02
    • Python操作MySQL数据库—pymysql库(可直接使用的模板通用操作)
      Python与MySQL数据库交互 1.DB-API:(DB是data;API是方法,接口) Python与数据库的交互: 在没有DB-API之前,各数据库之间的应用接口非常混乱,实现各不相同,如果项目需要更换数据库,基本上需要把所有和...
      99+
      2023-08-16
      mysql python pymysql库
    • 调用pymysql模块操作数据库
      1、创建数据库表: 1 def create_table(tb_name): 2 import pymysql#导入模块 3 #连接数据库 4 db = pymysql.Connect('localhos...
      99+
      2023-01-31
      模块 操作 数据库
    • 【python】flask+pymysql 实现Web端操作数据库!
      Flask是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 。Flask使用 BSD 授权。 Flask也被称为 “microframework” ,因为它...
      99+
      2023-10-25
      python flask 后端 1024程序员节
    • pymysql操作mysql数据库的方法
      目录前言1、pymysql.connent2、conn.cursor()3、cursor.execute()4、cursor.executemany()5、cursor.fetchone()6、cursor.scroll...
      99+
      2023-04-19
      pymysql操作mysql数据库 pymysql操作mysql
    • 怎么使用Python操作Redis数据库
      本篇内容主要讲解“怎么使用Python操作Redis数据库”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Python操作Redis数据库”吧!介绍Redis是一个开源的基于内存也可持久化...
      99+
      2023-07-02
    • 使用Python怎么操作MySQL数据库
      本篇文章给大家分享的是有关使用Python怎么操作MySQL数据库,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。MySQL 建表建表的时候,遇到一些坑,没有解决,如修改 MyS...
      99+
      2023-06-14
    • 利用python中pymysql操作MySQL数据库的新手指南
      目录一. pymysql介绍 二. 连接数据库的完整流程 1. 引入pymysql模块 2. 创建连接对象 3. 使用连接对象创建游标对象 4. 准备需要使用的sql语句 5. 使用...
      99+
      2024-04-02
    • Python数据库编程之pymysql详解
      目录python数据库编程之pymysql一、pymsql的安装二、连接数据库三、创建和管理数据库四、创建和管理表总结Python数据库编程之pymysql 学习之前务必安装MySQL并已启动相关服务。 一、pymsql...
      99+
      2023-05-05
      Python数据库之Pymysql Python Pymysql
    • Python接口自动化浅析pymysql数据库操作流程
      目录一、pymysql介绍及安装01 pymysql介绍02 pymysql安装二、pymysql流程及模块说明01 pymysql操作流程02pymysql模块说明Connecti...
      99+
      2024-04-02
    • 使用python怎么批量操作redis数据库
      使用python怎么批量操作redis数据库?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。方法一:使用 pipeline  使用pipelining ...
      99+
      2023-06-08
    • 使用Golang怎么操作数据库
      使用Golang怎么操作数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。golang适合做什么golang可以做服务器端开发,但golang很适合做日志处理、数据打包、...
      99+
      2023-06-14
    • pymysql对数据库基础操作与模拟sq
      本文将介绍python3中的pymysql模块对mysql进行增,删,改,查日常数据操作;实验的环境Ubuntu 16.04 mysql5.7.20 python3.5.2 数据库的安装忽略,如果也是ubuntu可直接通过sudo ...
      99+
      2023-01-31
      操作 数据库 基础
    • 使用Python操作MySql数据库和MsSql数据库
      目录一、MySQL数据库模块的安装和连接1、 PyMySQL模块的安装2 、python连接数据库二、创建表操作三、操作数据1、插入操作2、 查询操作3、 更新操作4、 删除操作四、...
      99+
      2024-04-02
    • Python操作数据库之数据库编程接口
      目录一、前言二、连接对象1.获取连接对象2.连接对象的方法三、游标对象一、前言 在项目开发中,数据库应用必不可少。虽然数据库的种类有很多,如SQLite、MySQL、Oracle等,...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作