Mysql批量插入数据(python脚本)
有个需求:需要在table1中插入205条数据,role_id固定为65,menu_id从91开始
方法二:python脚本实现
PyMySQL是一个纯Python编写的MySQL客户端库,用于连接和操作MySQL数据库。以下是PyMySQL的主要功能和优点:
功能:
- 数据库连接:PyMySQL提供了
connect()
方法,用于建立与MySQL数据库的连接。一旦连接建立,就可以执行各种数据库操作。 - 执行SQL语句:通过PyMySQL,你可以执行各种SQL语句,包括数据查询(SELECT)、数据插入(INSERT)、数据更新(UPDATE)和数据删除(DELETE)等。
- 事务管理:PyMySQL支持事务管理,确保数据的一致性和完整性。
- 数据库管理:除了基本的数据操作外,PyMySQL还可以用于执行一些数据库管理相关的任务,如创建或删除数据库、创建或删除数据表、创建或删除索引等。
优点:
- 简单易用:PyMySQL提供了简单易用的API,可以方便地进行数据库的连接和操作。开发者无需深入了解MySQL的内部实现,就可以轻松地与数据库进行交互。
- 轻量级:PyMySQL是一个轻量级的库,不依赖于其他的第三方库,可以方便地进行安装和使用。
- 直接使用SQL语句:PyMySQL直接使用SQL语句进行数据库操作,这使得开发者可以更加灵活地进行数据的读取和写入。同时,这也为开发者提供了更多的灵活性,因为他们可以根据需要编写复杂的SQL查询语句。
- 兼容性好:PyMySQL遵循Python数据库API v2.0规范,这使得它与其他Python数据库库(如sqlite3、psycopg2等)的接口保持一致。此外,PyMySQL还支持多种MySQL版本和操作系统平台。
- 安全性高: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()
结果: