Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cách chèn đối tượng Python vào MySQL

Giả sử cơ sở dữ liệu MySQL tên test đã tồn tại trên server và bảng employee đã được tạo với 5 cột: fname, lname, age, gender, salary.

Muốn chèn một đối tượng tuple chứa dữ liệu một bản ghi như sau vào MySQL:

t1 = ('Steven', 'Assange', 21, 'M', 2001)

Để thiết lập giao diện giữa MySQL và Python 3, cần cài đặt module PyMySQL (pip install PyMySQL). Sau đó thiết lập kết nối:

import PyMySQL
# Mở kết nối database
db = PyMySQL.connect("localhost", "root", "", "test")
# Tạo cursor
cursor = db.cursor()

Bước tiếp theo là xây dựng câu lệnh INSERT sử dụng dữ liệu trong tuple:

# Sử dụng parameterized query an toàn
sql = "INSERT INTO employee VALUES (%s, %s, %s, %s, %s)"
cursor.execute(sql, t1)

Cuối cùng, commit thay đổi và kiểm tra bảng employee sẽ thấy bản ghi mới được thêm vào.

Lưu ý: Code gốc dùng định dạng chuỗi %t1 dễ gây lỗi kiểu dữ liệu và SQL Injection. Cách an toàn là dùng placeholder %s cho mọi kiểu và truyền tuple vào execute().