Python Insert Into Table
- 上一頁 MySQL Create Table
- 下一頁 MySQL Select
插入表
如需填充 MySQL 中的表,請使用 "INSERT INTO" 語句。
實例
在表 "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() 方法的第二個參數是元組列表,包含要插入的數據:
實例
用數據填充 "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.")
獲取已插入 ID
您可以通過詢問 cursor 對象來獲取剛插入的行的 id。
注釋:如果插入不止一行,則返回最后插入行的 id。
實例
插入一行,并返回 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)
- 上一頁 MySQL Create Table
- 下一頁 MySQL Select