pythonexecutemany的使用

  • Post category:other

以下是详细讲解“Python execute many的使用”的完整攻略,过程中至少包含两条示例说明的标准Markdown格式文本:

Python execute many的使用

Python中的execute many是一种用于执行多个SQL语句的方法,它可以提高执行效率,减少数据库连接次数。本文将介绍Python execute many的使用方法和示例。

基本使用

在Python中,可以使用executemany()方法执行多个SQL语句。以下是示例代码:

import mysql.connector

mydb = mysql.connector.connect  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "INSERT INTO customers (name, address) VALUES (%s, %s)"
val = [
  ('John', 'Highway 21'),
  ('Peter', 'Lowstreet 4'),
  ('Amy', 'Apple st 652'),
  ('Hannah', 'Mountain 21'),
  ('Michael', 'Valley 345'),
  ('Sandy', 'Ocean blvd 2'),
  ('Betty', 'Green Grass 1'),
  ('Richard', 'Sky st 331'),
  ('Susan', 'One way 98'),
  ('Vicky', 'Yellow Garden 2'),
  ('Ben', 'Park Lane 38'),
  ('William', 'Central st 954'),
  ('Chuck', 'Main Road 989'),
  ('Viola', 'Sideway 1633')
]

mycursor.executemany(sql, val)

mydb.commit()

print(mycursor.rowcount, "was inserted.")

在上面的示例中,我们使用executemany()方法执行多个INSERT语句,将多个数据插入到表中。

批量更新

在Python中,可以使用executemany()方法批量更新数据。以下是示例代码:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "UPDATE customers SET address = %s WHERE address = %s"
val = [("Valley 345", "Canyon 123"), ("Mountain 21", "Valley 345")]

mycursor.executemany(sql, val)

mydb.commit()

print(mycursor.rowcount, "record(s) affected")

在上面的示例中,我们使用executemany()方法批量更新数据,将address为Canyon 123和Valley 345的数据更新为Valley 345和Mountain 21。

总结

以上是Python execute many的使用方法和示例。executemany()方法可以提高执行效率,减少数据库连接次数,但需要注意SQL语句的正确性和数据的一致性。在实际应用中,需要根据具体需求选择合适的方法和参数。