Một trong số những ứng dụng của ngôn ngữ Python trong thực tế đó là việc kết nối với cơ sở dữ liệu và thao tác xử lý với dữ liệu được lưu trữ trong một số hệ quản trị dữ liệu. Trong một số hệ quản trị cơ sở dữ liệu đó, phải kể đến MySQL – một trong những hệ quản trị cơ sở dữ liệu phổ biến và dễ dàng thao tác với Python.

1. Hệ quản trị cơ sở dữ liệu MySQL trong Python

MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở. Hiện tại MySQL đang là hệ quản trị cơ sở dữ liệu phổ biến nhất thế giới và được các lập trình viên ưa chuộng trong quá trình phát triển ứng dụng. MySQL có nhiều ưu điểm như: tốc độ cao, ổn định và dễ sử dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.

Chúng ta có thể sử dụng MySQL kết hợp với Python để thao tác với cơ sở dữ liệu. Để thực hiện được công việc đó, trước tiên bạn cần phải tải xuống và cài đặt hệ quản trị cơ sở dữ liệu MySQL tại đây: https://www.mysql.com/downloads/

Chúng ta cũng có thể cài đặt một chương trình tạo máy chủ Web được tích hợp sẵn MySQL để thay thế cho việc cài trực tiếp MySQL về máy. Một số chương trình, thường được sử dụng để tạo máy chủ web có tích hợp MySQL đó là:

Chú ý: Chúng ta chỉ nên cài đặt và sử dụng 1 trong hai chương trình ở trên. Chúng tôi khuyến khích bạn nên Download và sử dụng Xampp để sử dụng MySQL thông qua nó.

2. Cài đặt MySQL trong Python

Python không tích hợp sẵn các hàm kết nối và thao tác với MySQL, vì vậy nếu như ta muốn sử dụng được MySQL trong Python ta cần phải cài đặt một số mô-đun có thể thực hiện được việc kết nối và thao tác với cơ sở dữ liệu MySQL.

Trong loạt bài hướng dẫn về cách sử dụng MySQL trong Python, chúng tôi sẽ sử dụng thư viện “MySQL Connector” để thực hiện kết nối và thao tác với MySQL. Đề cài đặt thư viện này và sử dụng nó trong dự án của mình, chúng ta cần mở Command Line (cmd) trong máy và nhập vào câu lệnh cài đặt như sau:

C:\Users\Administrator>pip install mysql-connector-python

Sau khi việc cài đặt thư viện “MySQL Connector” hoàn tất trên máy. Chúng ta có thể thêm thư viện này vào trong chương trình như sau:

import mysql.connector

Sau khi nhập thư viện mysql.connector vào chương trình, ta có thể sử dụng các hàm/phương thức bao gồm các hàm để thực hiện kết nối, truy vấn, thao tác với cơ sở dữ liệu MySQL.

3. Kết nối MySQL với Python

Trước khi thực hiện các thao tác như: truy vấn, thêm, sửa, xóa các dữ liệu có trong MySQL thông qua chương trình Python – việc đầu tiên chúng ta cần làm là phải kết nối được Python với MySQL

Hãy đảm bảo rằng, việc cài đặt về máy của bạn hệ quản trị cơ sở dữ liệu MySQL (ở phần 1) đã hoàn tất, và bạn đã có được các thông tin cần thiết để kết nối MySQL với Python như:

  • host thường là localhost
  • user là tài khoản đăng nhập vào hệ quản trị cơ sở dữ liệu MySQL – thường là “root”
  • password là mật khẩu đăng nhập vào hệ quản trị cơ sở dữ liệu MySQL – thường là rỗng
  • database là tên cơ sở dữ liệu trong MySQL mà ta cần thao tác – chúng ta có thể tạo một cơ sở dữ liệu mới để thực hiện các ví dụ.

Ví dụ dưới đây, tôi sẽ kết nối MySQL với Python với host = localhost, user = “root, password = “”, database = “test” thông qua sử dụng hàm mysql.connector.connect() như sau:

import mysql.connector

try:
    # Ket noi MySQL voi Python bang ham mysql.connector.connect()
    mydb = mysql.connector.connect(
        host="localhost", 
        user="root",
        password="",
        database="test"
    )
    print("Ket noi thanh cong!")
except: # Truong hop co loi khi ket noi
    print("Kiem tra lai thong tin ket noi!")        

Kết quả:

Ket noi thanh cong!

Chương trình trên, sử dụng các khối Try…Except để đảm bảo rằng việc kết nối Python thất bại với MySQL sẽ không làm ngắt quãng chương trình!