Cách DELETE dữ liệu từ database MySQL bằng Python

Hướng dẫn cách sử dụng Prepared Statements trong Python để xóa dữ liệu từ một bảng trong database MySQL một cách an toàn và hiệu quả.

Trong bài viết này, bạn sẽ học cách kết nối đến một database MySQL và sử dụng Python với Prepared Statements để thực hiện câu lệnh DELETE, từ đó xóa các bản ghi từ bảng trong cơ sở dữ liệu theo nhiều tham số.

import mysql.connector

# Kết nối đến database MySQL
conn = mysql.connector.connect(
    host="localhost",
    user="root",
    password="password",
    database="test_db"
)

# Tạo một cursor object
cursor = conn.cursor()

# Câu lệnh DELETE với Prepared Statement
delete_query = "DELETE FROM students WHERE id = %s AND name = %s"
params = (1, 'John Doe')

# Thực hiện câu lệnh DELETE
cursor.execute(delete_query, params)

# Lưu thay đổi vào database
conn.commit()

# In số lượng bản ghi đã xóa
print(f"{cursor.rowcount} bản ghi đã bị xóa.")

# Đóng kết nối
cursor.close()
conn.close()

Giải thích chi tiết từng dòng code:

  1. import mysql.connector: Import thư viện mysql.connector để có thể kết nối với MySQL.
  2. conn = mysql.connector.connect(...): Kết nối đến database MySQL bằng cách sử dụng các thông tin kết nối như host, user, password, và database.
  3. cursor = conn.cursor(): Tạo một cursor để thực hiện các câu truy vấn SQL.
  4. delete_query = "DELETE FROM students WHERE id = %s AND name = %s": Định nghĩa câu lệnh DELETE với các tham số chi tiết.
  5. params = (1, 'John Doe'): Khai báo các giá trị tham số cần truyền vào câu lệnh DELETE.
  6. cursor.execute(delete_query, params): Thực hiện câu lệnh DELETE với các tham số đã được khai báo.
  7. conn.commit(): Lưu các thay đổi vào database.
  8. print(f"{cursor.rowcount} bản ghi đã bị xóa."): In ra số lượng bản ghi đã bị xóa.
  9. cursor.close()conn.close(): Đóng cursor và kết nối đến database.

Yêu cầu hệ thống:

  • Python 3.x
  • Thư viện: mysql-connector-python

Cách cài đặt các thư viện để chạy được đoạn mã Python trên:

Sử dụng pip để cài đặt thư viện:

pip install mysql-connector-python

Lời khuyên:

  • Hãy đảm bảo rằng MySQL server của bạn đang chạy trước khi thực hiện kết nối.
  • Kiểm tra kỹ các thông tin kết nối như host, user, password, và database để tránh lỗi kết nối.
  • Sử dụng Prepared Statements để bảo vệ khỏi các cuộc tấn công SQL injection.


Các Hướng Dẫn Cùng Chủ Đề Đang Xem

Tạo ứng dụng chat đơn giản sử dụng Socket.IO trong Python

Hướng dẫn chi tiết cách tạo ứng dụng chat đơn giản bằng Python sử dụng Socket.IO và Flask, cho phép người dùng gửi và nhận tin nhắn theo thời gian thực.
Truyền Authentication Header Token khi POST dữ liệu tới API bằng Python

Hướng dẫn cách gửi yêu cầu POST tới API kèm theo Authentication Header Token bằng Python. Phương pháp này được sử dụng để xác thực và bảo mật trong giao tiếp với các API.
Hướng dẫn tạo form upload nhiều hình ảnh bằng Python

Hướng dẫn chi tiết cách tạo form upload nhiều hình ảnh sử dụng Flask - một framework Python đơn giản và hiệu quả.
Cách SELECT dữ liệu từ database MySQL bằng Python

Hướng dẫn cách kết nối và truy vấn dữ liệu từ database MySQL bằng Python sử dụng thư viện mysql-connector-python.
Tổng hợp tất cả các cách sử dụng hàm print trong Python

Hướng dẫn chi tiết về tất cả các cách sử dụng hàm print() trong Python, bao gồm các tùy chọn định dạng, tham số và cách sử dụng nâng cao.
Cách tự động đăng nhập vào website sử dụng Selenium với Chrome trong Python

Hướng dẫn cách sử dụng thư viện Selenium trong Python để tự động đăng nhập vào một website bằng Chrome. Bài viết bao gồm hướng dẫn từng bước và mã Python hoàn chỉnh.
Tạo mã Captcha bằng Python

Hướng dẫn chi tiết cách tạo mã Captcha bằng Python sử dụng thư viện captcha. Bài viết sẽ giúp bạn hiểu cách tạo Captcha một cách đơn giản để bảo vệ các form khỏi spam và bot.
Xóa nền cho hình ảnh bằng thư viện Rembg trong Python

Hướng dẫn chi tiết cách xóa nền cho hình ảnh bằng Python và thư viện Rembg. Bài viết bao gồm mã nguồn và giải thích từng dòng mã.
Xóa nền xanh cho hình ảnh bằng Python

Hướng dẫn cách sử dụng Python để xóa phông xanh (chroma key) khỏi hình ảnh bằng thư viện OpenCV. Mã Python này giúp bạn loại bỏ nền xanh để thay thế bằng nền khác hoặc làm cho nó trở nên trong suốt.
Xử lý đa luồng trong Python

Hướng dẫn chi tiết cách xử lý đa luồng trong Python bằng cách sử dụng thư viện `threading` và `concurrent.futures`. Bài viết này giúp bạn hiểu cách sử dụng đa luồng để tăng hiệu suất xử lý đồng thời trong các tác vụ.

Đã thêm vào giỏ hàng