Python Insert Into Table

Einfügen in Tabelle

Um Tabellen in MySQL zu füllen, verwenden Sie den Befehl "INSERT INTO".

Example

Eintrag in die Tabelle "customers" einfügen:

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.")

Run Instance

Wichtig:Bitte beachten Sie die Anweisung mydb.commit()muss geändert werden, sonst wird die Tabelle nicht geändert.

Einfügen mehrerer Zeilen

Um mehrere Zeilen in die Tabelle einzufügen, verwenden Sie executemany() Methode.

Der zweite Parameter der Methode executemany() ist eine Liste von Tupeln, die die zu insertierenden Daten enthalten:

Example

Mit Daten "customers"-Tabelle füllen:

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.")

Run Instance

Get Inserted ID

You can obtain the id of the newly inserted row by querying the cursor object.

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)

Run Instance