Mysqldb python3

MySQL/MariaDB là 1 trong Hệ quản trị CSDL được sử dụng phổ biến nhất, sau đây là những cách kết nối tới MySQL/MariaDB sử dụng ngôn ngữ lập trình Python 3

Nội dung chính Hiển thị

  • Các thư viện kết nối MySQL/MariaDB
  • 1. Trình kết nối MySQL Python
  • 4. Máy khách MySQL
  • Cài đặt thư viện MySQL Client
  • Connect to MySQL/MariaDB by MySQL Client library with Python 3
  • Chuẩn bị và Cài đặt
  • Connected with MariaDB server
  • Truy xuất dữ liệu
  • Add data
  • Start off
  • Complete command

Các thư viện kết nối MySQL/MariaDB

To connect to MySQL/MariaDB, there are 4 library

1. Trình kết nối MySQL Python

  • Trang chủ. https. //pypi. con trăn. org/pypi/mysql-connector-python
  • Được hỗ trợ bởi Oracle
  • cao trăn nguyên chất
  • Hơi chậm 1 chút
  • Không tương thích với MySQLdb

2. PyMySQL

  • Trang chủ. https. //pypi. con trăn. tổ chức/pypi/pymysql
  • cao trăn nguyên chất
  • Nhanh hơn mysql-connector
  • Phần lơ lửng tương thích với MySQLdb

3. CyMySQL

  • Trang chủ. https. //pypi. con trăn. tổ chức/pypi/cymysql
  • Một nhánh rẽ của pymysql sử dụng ngôn ngữ C để tăng hiệu suất

4. Máy khách MySQL

  • Trang chủ. https. //pypi. con trăn. tổ chức/pypi/mysqlclient
  • Github. https. //github. com/PyMySQL/mysqlclient-python
  • Tài liệu. https. //mysqlclient. đọcthedocs. io/user_guide. html
  • Thư viện được giới thiệu bởi Django
  • Một góc quay của MySQLdb
  • Activity nhanh vì nó dựa trên C
  • Phần lớn tương thích với MySQLdb
  • Debian và Ubuntu cung cấp cho nó như là 1 gói. python-mysqldb và python3-mysqldb

Cài đặt thư viện MySQL Client

Cài đặt thông qua lệnh apt của Ubuntu và Debian

sudo apt-get install python3-dev default-libmysqlclient-dev

Cài đặt thông qua lệnh yum của CentOS và Mũ đỏ

sudo yum install python3-devel mysql-devel

Cài đặt thông qua brew MacOS

brew install mysql-connector-c

Cài đặt thông qua công cụ quản lý pip3 của Python 3

pip3 install mysqlclient

Connect to MySQL/MariaDB by MySQL Client library with Python 3

Để kết nối sử dụng Python MySQL Client, chúng tôi tham khảo đoạn mã nguồn sau

#!/usr/bin/env python3
import MySQLdb

# Create db connection
db = MySQLdb.connect(host="127.0.0.1", port=3306, user="root", passwd="", db="vinasupport")

# To perform a query, you first need a cursor
c = db.cursor()

# make select version query
c.execute("select version()")

# Print output of the query
print(c.fetchone())

Kết quả

Mysqldb python3

Nguồn. vinasupport. com

Trước đây chúng tôi đã viết blog về việc sử dụng Python để kết nối với máy chủ MariaDB bằng gói MySQL Python. Vào tháng 6 năm 2020, MariaDB đã phát hành bản phát hành Connector / Python nói chung lần đầu tiên. Chúng tôi đã làm blog này mới để phản ánh công nghệ mới nhất. Nếu bạn cần blog cũ, bạn có thể tìm thấy nó ở đây

Bạn có thể sử dụng ngôn ngữ lập trình biến Python phổ biến để quản lý dữ liệu được lưu trữ trong Nền tảng MariaDB, bao gồm Máy chủ MariaDB, MariaDB MaxScale và MariaDB SkySQL. Đây là điều bạn cần biết về việc kết nối với Nền tảng MariaDB từ Python để truy xuất, cập nhật và thêm thông tin

Chuẩn bị và Cài đặt

Bạn cần có quyền truy cập vào Máy chủ MariaDB. Chúng tôi đề xuất một trong hai phương pháp sau.
1. Tải xuống Máy chủ MariaDB trên phần cứng của riêng bạn. Xem  Hướng dẫn khai thác để biết hướng dẫn từng bước trong tài liệu của chúng tôi.

HOẶC LÀO

2. Triển khai Nền tảng MariaDB, bao gồm Máy chủ Doanh nghiệp MariaDB, sử dụng MariaDB SkySQL. Xem tài liệu của chúng tôi để khởi động dịch vụ cơ sở dữ liệu trong vài phút

Nếu bạn muốn thử hợp nhất Python với MariaDB nhưng bạn không có cơ sở dữ liệu để sử dụng, bạn có thể sử dụng cơ sở dữ liệu ví dụ về nhân viên phổ biến

MariaDB cung cấp thông tin hỗ trợ Python thông qua Trình kết nối MariaDB / Python, có sẵn thông qua Chỉ mục gói Python. Để cài đặt, hãy sử dụng PIP

$ pip3 install mariadb

Connected with MariaDB server

1. Để kết nối với Máy chủ MariaDB bằng Trình kết nối MariaDB / Python, bạn phải nhập nó trước, giống như bạn làm với bất kỳ mô-đun nào khác.

sudo yum install python3-devel mysql-devel
4

2. Tiếp theo, thiết lập kết nối cơ sở dữ liệu với hàm connect(). Hàm nhận một loạt các đối số được đặt tên chỉ định thông tin xác thực ứng dụng khách của bạn, chẳng hạn như tên người dùng, máy chủ lưu trữ, mật khẩu. Nếu bạn đang sử dụng phiên bản cơ sở dữ liệu trên SkySQL, thông tin này được cung cấp trong trang Chi tiết dịch vụ cho phiên bản cơ sở dữ liệu của bạn

Kết nối cung cấp cho bạn một giao diện để định cấu hình kết nối ứng dụng của bạn với Máy chủ MariaDB

3. Cuối cùng, gọi phương thức

sudo yum install python3-devel mysql-devel
5 trên kết nối để truy xuất con trỏ

Con trỏ cung cấp cho bạn một giao diện để tương tác với Máy chủ, chẳng hạn như chạy truy vấn SQL và quản lý các giao dịch

________số 8

Truy xuất dữ liệu

Khi bạn có mã ban đầu tại vị trí, bạn có thể bắt đầu làm việc với dữ liệu. Điều đầu tiên bạn nên làm là cố gắng lấy thông tin từ cơ sở dữ liệu. Đây là mã cho một truy vấn đối với nhân viên cơ sở dữ liệu

cur.execute(
    "SELECT first_name,last_name FROM employees WHERE first_name=?", 
    (some_name,))


Trình kết nối MariaDB / Python sử dụng các câu lệnh đã chuẩn bị sẵn, làm sạch và chèn các giá trị từ bộ giá trị vào vị trí của các dấu chấm hỏi (?). Điều này an toàn hơn với việc chèn thông số qua chuỗi f hoặc bộ chỉ định dạng định dạng khi làm việc với thông tin do người dùng cung cấp

Kết quả truy vấn được lưu trữ trong một danh sách trong đối tượng con trỏ. Để xem kết quả, bạn có thể lặp qua con trỏ

sudo yum install python3-devel mysql-devel
0


Mỗi hàng được chuyển từ con trỏ dưới dạng một bộ chứa các cột trong câu lệnh

sudo yum install python3-devel mysql-devel
6

Add data

Sử dụng cùng một phương pháp

sudo yum install python3-devel mysql-devel
7 với một câu lệnh
sudo yum install python3-devel mysql-devel
8, bạn có thể thêm hàng vào bảng

sudo yum install python3-devel mysql-devel
4


Theo mặc định, MariaDB Connector / Python cho phép tự động kết nối. Nếu bạn muốn quản lý thủ công các giao dịch của mình, chỉ cam kết khi bạn có sẵn, bạn có thể vô hiệu hóa nó bằng cách đặt

sudo yum install python3-devel mysql-devel
9 thuộc tính trên kết nối thành Sai

sudo yum install python3-devel mysql-devel
0


Khi điều này được thực hiện, bạn có thể cam kết và khôi phục các giao dịch bằng cách sử dụng các phương thức

brew install mysql-connector-c
0và
brew install mysql-connector-c
1. Máy chủ MariaDB cho phép bạn chạy nhiều giao dịch đồng thời trên cùng một bảng mà không cần khóa nó khi bạn sử dụng công cụ lưu trữ InnoDB

Trong khi chèn hàng, bạn có thể muốn tìm Key chính của hàng được chèn vào cuối cùng khi nó được tạo, giống như các giá trị tự động tăng lên. Bạn có thể truy xuất điều này bằng cách sử dụng phương pháp

brew install mysql-connector-c
2 trên con trỏ

Việc cập nhật và xóa hàng hóa được thực hiện tương tự như việc chèn chúng. Sự khác biệt duy nhất là trong truy vấn được sử dụng

Start off

Đối với bất kỳ hành động SQL nào của bạn (truy vấn, cập nhật, xóa hoặc chèn bản ghi), bạn nên cố gắng kiểm tra lỗi để có thể xác minh rằng hành động của mình đang được thực hiện như mong đợi và bạn mong đợi . Để vượt qua lỗi, hãy sử dụng Lớp lỗi

sudo yum install python3-devel mysql-devel
1


Nếu truy vấn trong

brew install mysql-connector-c
3mệnh đề của mã trên không thành công, Máy chủ MariaDB trả về một SQL ngoại lệ, ngoại lệ này bị truy vấn ngoại lệ và được đặt trong thiết bị xuất chuẩn. Phương pháp lập trình tốt nhất để bắt các ngoại lệ này đặc biệt quan trọng khi bạn đang làm việc với cơ sở dữ liệu, vì bạn cần đảm bảo tính toàn vẹn của thông tin

Khi bạn hoàn thành công việc với cơ sở dữ liệu, hãy chắc chắn rằng bạn đóng kết nối này để tránh mở các kết nối không sử dụng và do đó lãng phí tài nguyên. You can close connection by

brew install mysql-connector-c
4 method

sudo yum install python3-devel mysql-devel
2


Nếu bạn đã sử dụng SkySQL để thử nghiệm, bạn có thể muốn xóa dịch vụ cơ sở dữ liệu của mình để tiếp tục phát sinh phí

Complete command

Đây là cách dễ dàng và đơn giản để kết nối mã Python của bạn với cơ sở dữ liệu MariaDB. Đây là cách một tập lệnh hoàn chỉnh sẽ trông như thế nào