Insert pada Tabel
Untuk mengisi tabel di MySQL, gunakan pernyataan “INSERT INTO”.
Contoh:
Insert catatan di tabel “customers”
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="myusername", password="mypassword", 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.")
Penting! : Perhatikan pernyataan: mydb.commit(). Diperlukan untuk melakukan perubahan, ataupun tidak ada perubahan yang dilakukan pada tabel.
Insert Beberapa Baris
Untuk menyisipkan beberapa baris ke dalam tabel, gunakan metode executemany().
Parameter kedua dari metode executemany() adalah daftar tupel, berisi data yang ingin Anda masukkan.
Contoh:
Isi tabel “customers” dengan data:
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="myusername", password="mypassword", 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, "record was inserted.")
Mendapatkan ID yang Disisipkan
Anda bisa mendapatkan id dari baris yang baru saja disisipkan dengan menanyakan objek kursor.
Catatan: Jika Anda memasukkan lebih dari satu baris, id dari baris terakhir yang disisipkan akan dikembalikan.
Contoh:
Sisipkan satu baris, dan kembalikan ID
import mysql.connector mydb = mysql.connector.connect( host="localhost", user="myusername", password="mypassword", 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)