Khi làm việc với cơ sở dữ liệu trong các ứng dụng Python, MySQL là một trong những hệ quản trị cơ sở dữ liệu phổ biến và mạnh mẽ nhất. Việc nắm vững cách kết nối, thực hiện truy vấn và quản lý dữ liệu trong MySQL là rất quan trọng cho việc phát triển ứng dụng hiệu quả. Trong bài viết này, chúng ta sẽ khám phá cách thiết lập kết nối với MySQL bằng Python, cũng như các thao tác cơ bản như tạo bảng, chèn dữ liệu, cập nhật và xóa dữ liệu. Với hướng dẫn chi tiết và ví dụ thực tế, bạn sẽ có cái nhìn toàn diện về cách sử dụng Python để làm việc với MySQL một cách dễ dàng và hiệu quả.

Để tương tác với MySQL trong Python, bạn có thể sử dụng thư viện mysql-connector-python hoặc PyMySQL. Dưới đây là hướng dẫn cơ bản về cách kết nối và thực hiện các thao tác cơ bản với MySQL bằng Python:

Cài đặt Thư Viện

Trước tiên, bạn cần cài đặt thư viện cần thiết. Bạn có thể cài đặt mysql-connector-python bằng cách sử dụng pip:

pip install mysql-connector-python

Hoặc PyMySQL:

pip install PyMySQL

Kết Nối Đến Cơ Sở Dữ Liệu

Dưới đây là ví dụ cách kết nối đến cơ sở dữ liệu MySQL và thực hiện một số thao tác cơ bản bằng mysql-connector-pythonPyMySQL.

Sử Dụng mysql-connector-python

import mysql.connector

# Kết nối đến cơ sở dữ liệu
conn = mysql.connector.connect(
    host="localhost",
    user="root",
    password="yourpassword",
    database="yourdatabase"
)

cursor = conn.cursor()

# Thực hiện câu lệnh SQL
cursor.execute("SELECT * FROM your_table")

# Lấy dữ liệu từ câu lệnh SQL
rows = cursor.fetchall()

for row in rows:
    print(row)

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

Sử Dụng PyMySQL

import pymysql

# Kết nối đến cơ sở dữ liệu
conn = pymysql.connect(
    host='localhost',
    user='root',
    password='yourpassword',
    database='yourdatabase'
)

cursor = conn.cursor()

# Thực hiện câu lệnh SQL
cursor.execute("SELECT * FROM your_table")

# Lấy dữ liệu từ câu lệnh SQL
rows = cursor.fetchall()

for row in rows:
    print(row)

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

Thực Hiện Các Thao Tác Cơ Bản

Tạo Bảng

create_table_query = """
CREATE TABLE IF NOT EXISTS users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100),
    email VARCHAR(100)
)
"""

cursor.execute(create_table_query)

Chèn Dữ Liệu

insert_query = "INSERT INTO users (name, email) VALUES (%s, %s)"
data = ("John Doe", "[email protected]")

cursor.execute(insert_query, data)
conn.commit()

Cập Nhật Dữ Liệu

update_query = "UPDATE users SET email = %s WHERE name = %s"
data = ("[email protected]", "John Doe")

cursor.execute(update_query, data)
conn.commit()

Xóa Dữ Liệu

delete_query = "DELETE FROM users WHERE name = %s"
data = ("John Doe",)

cursor.execute(delete_query, data)
conn.commit()

Xử Lý Ngoại Lệ

Để đảm bảo chương trình hoạt động ổn định, bạn nên xử lý ngoại lệ khi làm việc với cơ sở dữ liệu:

try:
    conn = mysql.connector.connect(
        host="localhost",
        user="root",
        password="yourpassword",
        database="yourdatabase"
    )
    cursor = conn.cursor()
    # Thực hiện các thao tác với cơ sở dữ liệu
except mysql.connector.Error as err:
    print(f"Error: {err}")
finally:
    cursor.close()
    conn.close()

Hy vọng hướng dẫn này giúp bạn bắt đầu làm việc với MySQL trong Python! Nếu bạn có bất kỳ câu hỏi nào thêm, đừng ngần ngại hỏi dưới bình luận nhé.