Python Insert Into Table
- Previous Page MySQL Create Table
- Next Page MySQL Select
插入表
如需填充 MySQL 中的表,请使用 "INSERT INTO" 语句。
Example
在表 "customers" 中插入记录:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", passwd="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "INSERT INTO customers (name, address) VALUES (%s, %s)" val = ("John", "Highway 21") mycursor.execute(sql, val) mydb.commit() print(mycursor.rowcount, "record inserted.")
重要:请注意语句 mydb.commit()
。需要进行更改,否则表不会有任何改变。
插入多行
要在表中插入多行,请使用 executemany()
方法。
executemany() 方法的第二个参数是元组列表,包含要插入的数据:
Example
用数据填充 "customers" 表:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", passwd="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "INSERT INTO customers (name, address) VALUES (%s, %s)" val = [ ('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.")
Get Inserted ID
You can ask the cursor object to get the id of the newly inserted row.
Note:If more than one row is inserted, the id of the last inserted row is returned.
Example
Insert one row and return id:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="yourusername", passwd="yourpassword", database="mydatabase" ) mycursor = mydb.cursor() sql = "INSERT INTO customers (name, address) VALUES (%s, %s)" val = ("Michelle", "Blue Village") mycursor.execute(sql, val) mydb.commit() print("1 record inserted, ID:", mycursor.lastrowid)
- Previous Page MySQL Create Table
- Next Page MySQL Select