Python mysql memperbarui kueri berparameter

Konektor digunakan ketika kita harus menggunakan MySQL dengan bahasa pemrograman lain. Pekerjaan konektor MySQL adalah untuk menyediakan akses ke Driver MySQL ke bahasa yang diperlukan. Dengan demikian, ini menghasilkan koneksi antara bahasa pemrograman dan Server MySQL

Ringkasan. tutorial ini memandu Anda melalui langkah-langkah yang diperlukan untuk memperbarui data di tabel MySQL dengan menggunakan MySQL Connector/Python API

Untuk memperbarui data dalam tabel MySQL dengan Python, ikuti langkah-langkah berikut

  1. Sambungkan ke database dengan membuat objek MySQLConnection baru
  2. Buat objek MySQLCursor baru dari objek MySQLConnection dan panggil metode execute() dari objek MySQLCursor. Untuk menerima perubahan, Anda memanggil metode

    UPDATE books SET title = 'The Giant on the Hill *** TEST ***' WHERE id = 37

    Code language: SQL (Structured Query Language) (sql)
    _1 dari objek MySQLConnection setelah memanggil metode execute(). Jika tidak, tidak ada perubahan yang akan dilakukan pada database
  3. Tutup kursor dan koneksi database

Contoh berikut memperbarui judul buku yang ditentukan oleh id buku

from mysql.connector import MySQLConnection, Error from python_mysql_dbconfig import read_db_config def update_book(book_id, title): # read database configuration db_config = read_db_config() # prepare query and data query = """ UPDATE books SET title = %s WHERE id = %s """ data = (title, book_id) try: conn = MySQLConnection(**db_config) # update book title cursor = conn.cursor() cursor.execute(query, data) # accept the changes conn.commit() except Error as error: print(error) finally: cursor.close() conn.close() if __name__ == '__main__': update_book(37, 'The Giant on the Hill *** TEST ***')

Code language: Python (python)
_

Dalam modul ini, kami menggunakan fungsi

UPDATE books SET title = 'The Giant on the Hill *** TEST ***' WHERE id = 37

Code language: SQL (Structured Query Language) (sql)
_4 dari modul python_mysql_dbconfig yang kami buat dalam menghubungkan ke database dari tutorial Python

Kami menempatkan dua placeholder (%) di dalam pernyataan UPDATE, satu untuk judul buku dan satu lagi untuk id buku. Kami meneruskan pernyataan

UPDATE books SET title = 'The Giant on the Hill *** TEST ***' WHERE id = 37

Code language: SQL (Structured Query Language) (sql)
5 (

UPDATE books SET title = 'The Giant on the Hill *** TEST ***' WHERE id = 37

Code language: SQL (Structured Query Language) (sql)
6 ) dan tuple

UPDATE books SET title = 'The Giant on the Hill *** TEST ***' WHERE id = 37

Code language: SQL (Structured Query Language) (sql)
7 ke metode execute(). Konektor akan menginterpretasikan kueri sebagai berikut

UPDATE books SET title = 'The Giant on the Hill *** TEST ***' WHERE id = 37

Code language: SQL (Structured Query Language) (sql)

Penting untuk dipahami bahwa kita harus selalu menggunakan placeholder (

UPDATE books SET title = 'The Giant on the Hill *** TEST ***' WHERE id = 37

Code language: SQL (Structured Query Language) (sql)
9) di dalam pernyataan SQL apa pun yang berisi masukan dari pengguna. Ini membantu kami mencegah injeksi SQL

PEMBARUAN Operasi pada basis data apa pun memperbarui satu atau lebih catatan, yang sudah tersedia di basis data. Anda dapat memperbarui nilai record yang ada di MySQL menggunakan pernyataan UPDATE. Untuk memperbarui baris tertentu, Anda perlu menggunakan klausa WHERE bersamanya

Sintaksis

Berikut ini adalah sintaks pernyataan UPDATE di MySQL −

UPDATE table_name
SET column1 = value1, column2 = value2...., columnN = valueN
WHERE [condition];
_

Anda dapat menggabungkan sejumlah N kondisi menggunakan operator AND atau OR

Contoh

Asumsikan kita telah membuat tabel di MySQL dengan nama EMPLOYEES sebagai −

mysql> CREATE TABLE EMPLOYEE(
   FIRST_NAME CHAR(20) NOT NULL,
   LAST_NAME CHAR(20),
   AGE INT,
   SEX CHAR(1),
   INCOME FLOAT
);
Query OK, 0 rows affected (0.36 sec)
_

Dan jika kita telah memasukkan 4 record ke dalamnya menggunakan pernyataan INSERT sebagai −

mysql> INSERT INTO EMPLOYEE VALUES
   ('Krishna', 'Sharma', 19, 'M', 2000),
   ('Raj', 'Kandukuri', 20, 'M', 7000),
   ('Ramya', 'Ramapriya', 25, 'F', 5000),
   ('Mac', 'Mohan', 26, 'M', 2000);

Mengikuti pernyataan MySQL meningkatkan usia semua karyawan laki-laki satu tahun −

mysql> UPDATE EMPLOYEE SET AGE = AGE + 1 WHERE SEX = 'M';
Query OK, 3 rows affected (0.06 sec)
Rows matched: 3 Changed: 3 Warnings: 0

Jika Anda mengambil isi tabel, Anda dapat melihat nilai yang diperbarui sebagai −

mysql> select * from EMPLOYEE;
+------------+-----------+------+------+--------+
| FIRST_NAME | LAST_NAME | AGE  | SEX  | INCOME |
+------------+-----------+------+------+--------+
| Krishna    | Sharma    | 20   | M    | 2000   |
| Raj        | Kandukuri | 21   | M    | 7000   |
| Ramya      | Ramapriya | 25   | F    | 5000   |
| Mac        | Mohan     | 27   | M    | 2000   |
+------------+-----------+------+------+--------+
4 rows in set (0.00 sec)

Memperbarui isi tabel menggunakan Python

Untuk mengupdate record pada tabel di MySQL menggunakan python−

  • impor mysql. paket konektor

  • Buat objek koneksi menggunakan mysql. penyambung. connect() metode, dengan meneruskan nama pengguna, kata sandi, host (opsional default. localhost) dan, database (opsional) sebagai parameternya

    Bagaimana cara memperbarui data di MySQL menggunakan Python?

    Memperbarui isi tabel menggunakan Python .
    impor mysql. paket konektor
    Buat objek koneksi menggunakan mysql. penyambung. .
    Buat objek kursor dengan memanggil metode cursor() pada objek koneksi yang dibuat di atas
    Kemudian, jalankan pernyataan UPDATE dengan meneruskannya sebagai parameter ke metode execution()

    Bagaimana Anda menulis kueri SQL berparameter dengan Python?

    Mari kita lihat contoh kueri berparameter. .
    sql_parameterized_query = """Perbarui set karyawan Gaji = %s di mana id = %s"""
    query = """Perbarui set karyawan Gaji = %s di mana id = %s""" tuple1 = (8000, 5) kursor. jalankan (kueri, tuple1)
    impor mysql. koneksi konektor = mysql. .
    koneksi

    Bagaimana Anda meneruskan nilai dinamis dalam kueri SQL dengan Python?

    Menetapkan Kueri SQL ke Variabel Python . Nilai dinamis dapat diganti langsung ke {0} dan {1} dengan namanya, seperti {column_name} dan {value_holder} . Tetapi seringkali bermanfaat untuk menghindari pendekatan panggilan dengan nama.

    Bagaimana Anda memperbarui kueri dengan Python?

    Contoh untuk Memperbarui deretan Tabel MySQL .
    Hubungkan ke MySQL dari Python. .
    Siapkan Permintaan Pembaruan SQL. .
    Jalankan kueri UPDATE, menggunakan kursor. menjalankan().
    Komit perubahan Anda. .
    Ekstrak jumlah baris yang terpengaruh. .
    Verifikasi hasil menggunakan kueri SQL SELECT. .
    Tutup objek kursor dan objek koneksi database