Python MySQL 插入表



章節


插入表

要把記錄插入到MySQL中的表中,使用“INSERT INTO”語句。

示例

在“customers”表中插入一條記錄:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="你的用戶名",
  passwd="你的密碼",
  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, "條記錄已插入")

注意: 調用mydb.commit()語句提交修改,否則修改不會生效。

插入多行

要將多行插入到表中,使用executemany()方法。

executemany()方法的第二個參數是一個元組列表,包含了要插入的數據:

示例

填寫“客戶”表格:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="你的用戶名",
  passwd="你的密碼",
  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, " 條已經插入")

獲取插入行的ID

可以通過查詢cursor對象,獲得剛才插入行的id。

注意: 如果插入多行,則返回最后插入行的id。

示例

插入一行,並返回ID:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="你的用戶名",
  passwd="你的密碼",
  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 條記錄插入, ID:", mycursor.lastrowid)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM