首页 > 数据库 >Mysql批量插入数据(python脚本)

Mysql批量插入数据(python脚本)

时间:2024-05-14 15:54:38浏览次数:22  
标签:语句 批量 python 数据库 Mysql PyMySQL cursor SQL MySQL

有个需求:需要在table1中插入205条数据,role_id固定为65,menu_id从91开始
方法二:python脚本实现

PyMySQL是一个纯Python编写的MySQL客户端库,用于连接和操作MySQL数据库。以下是PyMySQL的主要功能和优点:

功能:

  1. 数据库连接:PyMySQL提供了connect()方法,用于建立与MySQL数据库的连接。一旦连接建立,就可以执行各种数据库操作。
  2. 执行SQL语句:通过PyMySQL,你可以执行各种SQL语句,包括数据查询(SELECT)、数据插入(INSERT)、数据更新(UPDATE)和数据删除(DELETE)等。
  3. 事务管理:PyMySQL支持事务管理,确保数据的一致性和完整性。
  4. 数据库管理:除了基本的数据操作外,PyMySQL还可以用于执行一些数据库管理相关的任务,如创建或删除数据库、创建或删除数据表、创建或删除索引等。

优点:

  1. 简单易用:PyMySQL提供了简单易用的API,可以方便地进行数据库的连接和操作。开发者无需深入了解MySQL的内部实现,就可以轻松地与数据库进行交互。
  2. 轻量级:PyMySQL是一个轻量级的库,不依赖于其他的第三方库,可以方便地进行安装和使用。
  3. 直接使用SQL语句:PyMySQL直接使用SQL语句进行数据库操作,这使得开发者可以更加灵活地进行数据的读取和写入。同时,这也为开发者提供了更多的灵活性,因为他们可以根据需要编写复杂的SQL查询语句。
  4. 兼容性好:PyMySQL遵循Python数据库API v2.0规范,这使得它与其他Python数据库库(如sqlite3、psycopg2等)的接口保持一致。此外,PyMySQL还支持多种MySQL版本和操作系统平台。
  5. 安全性高:PyMySQL支持参数化查询,这有助于提高代码的安全性和防止SQL注入攻击。通过参数化查询,开发者可以将用户输入的数据与SQL语句分离开来,从而避免恶意用户通过输入特定值来篡改SQL语句的执行结果。
import pymysql
from loguru import logger

# 创建连接
conn = pymysql.connect(host='xx.xx.xxx.89', user='test', password='test', db='test-sit')
cursor = conn.cursor()
logger.info(cursor)

# 插入 205 条数据
for i in range(0,205):
    sql = "INSERT INTO table1(role_id,menu_id) VALUES (%s,%s)"
    val = (65, 91+i)
    cursor.execute(sql, val)

# 提交事务
conn.commit()

# 关闭连接
cursor.close()
conn.close()

结果:

 

标签:语句,批量,python,数据库,Mysql,PyMySQL,cursor,SQL,MySQL
From: https://www.cnblogs.com/zhaoboyuanyuan/p/18191451

相关文章

  • Mysql批量插入数据
    有个需求:需要在table1中插入205条数据,role_id固定为65,menu_id从91开始方法一:存储过程1、什么是存储过程?MySQL存储过程(StoredProcedure)是一组为了完成特定功能的SQL语句集合。用户通过指定的存储过程名称和参数(如果有的话)来调用并执行它。存储过程可以在程序中被多次调用,并......
  • 【python】异常获取
    【日期】2024/5/14【问题】代码异常获取【分析】1、在代码中获取异常,并打印堆栈try:Qt5QWindowIcon=MainWindow.child_window(title="FJDTrionModel",class_name="Qt5QWindowIcon")exceptExceptionase:traceback.print_exc()2、......
  • mysql 锁
    1,介绍  锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。......
  • Centos7下Prometheus+Grafana部署 redis 以及 mysql 监控
    Prometheus部署mysql监控本篇文章部分内容与我前一篇文章衔接,看不明白的可以参考我前一篇文章Centos7下搭建Prometheus+Grafana并部署基础监控Redis监控对于Redis的监控,Prometheus可以收集多种指标,包括但不限于:命令统计:如每个命令的调用次数、执行时间等。内存使用情......
  • mysql触发器
    1.介绍  触发器是与表有关的数据库对象,指在insert/update/delete之前(BEFORE)或之后(AFTER),触发并执行触发器中定义的SQL语句集合。触发器的这种特性可以协助应用在数据库端确保数据的完整性,日志记录,数据校验等操作。  使用别名OLD和NEW来引用触发器中发生......
  • [996] Upload a file to an Amazon S3 bucket and obtain the URL of it using Python
    Certainly!TouploadafiletoanAmazonS3bucketusingPython(specificallywiththeboto3library)andobtainthelink(URL)forthatfile,followthesesteps:InstallBoto3:Makesureyouhavetheboto3libraryinstalled.Ifnot,youcaninstallit......
  • 文件(夹)批量重命名数字、字母、日期、中文数字大写小写
    首先,需要用到的这个工具:度娘网盘提取码:qwu2蓝奏云提取码:2r1z 目标是重命名下面5个文件(也可以是文件夹等,任意),从大写中文数字“贰”开始 打开工具,找到“文件批量复制”版块,快捷键Ctrl+5 找到右下角重命名按钮,点击打开 把那5个要重命名的文件拖入(也可以右边的按......
  • 基于Python实现MapReduce
    一、什么是MapReduce首先,将这个单词分解为Map、Reduce。Map阶段:在这个阶段,输入数据集被分割成小块,并由多个Map任务处理。每个Map任务将输入数据映射为一系列(key,value)对,并生成中间结果。Reduce阶段:在这个阶段,中间结果被重新分组和排序,以便相同key的中间结果被传递到同一个R......
  • docker 安装 MantisBT,并配置mysql
    1、拉取镜像dockerpullvimagick/mantisbt 2、先预运行容器,用于复制配置dockerrun-d-p10080:80--namemantisbtvimagick/mantisbt 3、创建本地数据挂载目录mkdir-p/home/dockerdata/mantisbt 4、复制容器配置到本地挂载目录dockercpmantisbt:/var/......
  • 安装mysql和运程连接
    一、拉取镜像#拉取镜像dockerpullmysql#或者dockerpullmysql:latest#指定版本号dockerpullmysql:5.7#以上两个命令是一致的,默认拉取的就是latest版本的#我们还可以用下面的命令来查看可用版本:dockersearchmysql二、查看镜像dockerimages三、运......