要填充 MySQL 中的表,请使用 "INSERT INTO" 语句。
在 "customers" 表中插入一条记录:
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")
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",
password="
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。
笔记:如果插入多行,则返回最后插入的行的 id。
插入一行,并返回 ID:
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 = ("Michelle", "Blue Village")
mycursor.execute(sql, val)
mydb.commit()
print("1 record inserted, ID:", mycursor.lastrowid)
运行示例 »
截取页面反馈部分,让我们更快修复内容!也可以直接跳过填写反馈内容!