Python Insert Into Table

Insertion de table

Pour remplir une table dans MySQL, utilisez l'instruction "INSERT INTO".

Exemple

Insérer un enregistrement dans la table "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)

print(mycursor.rowcount, "record inserted.")

Exécuter l'exemple

Important :Veuillez noter l'instruction Doit être modifié, sinon la table ne subira aucune modification.

Insertion de multiples lignes

Pour insérer plusieurs lignes dans la table, utilisez executemany() Méthode.

Le deuxième paramètre de la méthode executemany() est une liste de tuples, contenant les données à insérer :

Exemple

Remplir la table "customers" avec des données :

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)

print(mycursor.rowcount, "a été inséré.")

Exécuter l'exemple

Obtenir l'ID inséré

Vous pouvez obtenir l'ID de la ligne insérée récemment en demandant à l'objet cursor.

Remarque :Si plusieurs lignes sont insérées, l'ID de la dernière ligne insérée est retourné.

Exemple

Insérer une ligne et retourner l'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)

print("1 enregistrement inséré, ID:\

Exécuter l'exemple