Cập nhật trình kết nối mysql

Trong quá trình làm việc với dữ liệu, sẽ không tránh khỏi tình trạng thiếu hoặc trùng lặp dữ liệu. Để xử lý những trường hợp đó trong MySQL, chúng ta có hai cách là CẬP NHẬT và XÓA. Cùng eLib tìm hiểu qua bài viết dưới đây

lục mục lục

Cập nhật trình kết nối mysql

1. Lệnh cập nhật

Sử dụng lệnh UPDATE-SET để cập nhật giá trị của một hoặc nhiều cột trong bảng. Câu lệnh sau đây được sử dụng để cập nhật một cột

update Employee set name = 'Đạt' where id = 10001

Ví dụ

import mysql.connector

#tạo đối tượng connection
myconn = mysql.connector.connect(host = "localhost", user = "root",
    passwd = "1234567890", database = "PythonDB")

#tạo đối tượng cursor
cur = myconn.cursor()

try:
    # cập nhật name cho bảng Employee
    cur.execute("update Employee set name = 'Đạt' where id = 10001")
    myconn.commit()

except:
    myconn.rollback()

myconn.close()

2. Lệnh Xóa

Ra lệnh DELETE FROM are used to delete an write only from table. Ở đây, chúng ta phải sử dụng câu điều kiện WHERE để chỉ định bản ghi mà bạn muốn xóa, nếu không thì tất cả sẽ bị xóa. 2.  

Sau khi lệnh sql được sử dụng để xóa nhân viên có id là 110

delete from Employee where id = 10001

Ví dụ

import mysql.connector

#tạo đối tượng connection
myconn = mysql.connector.connect(host = "localhost", user = "root",
    passwd = "1234567890", database = "PythonDB")

#tạo đối tượng cursor
cur = myconn.cursor()

try:
    # cập nhật name cho bảng Employee
    cur.execute("delete from Employee where id = 10001")
    myconn.commit()

except:
    myconn.rollback()

myconn.close()

Trên đây là bài viết của eLib. VN về Lệnh UPDATE và DELETE MySQL trong Python. Hy vọng qua bài này bạn sẽ hiểu và vận dụng trong quá trình học tập và làm việc với Python. Chúc các bạn thành công

Trong bài viết này mình sẽ hướng dẫn cách sử dụng module mysql-connector-python để xử lý kết nối và truy vấn MySQL. Các thao tác trong cơ sở MySQL như kết nối / chèn / cập nhật / xóa và chọn

Cập nhật trình kết nối mysql

Bài viết này đã được đăng tại freetuts. net , không được sao chép dưới mọi hình thức.

Đây là mô-đun phổ biến nhất khi làm việc với MySQL trong Python. And before started, mình xin giới thiệu một chút về module này đã nhé

1. MySQL Python Connector là gì?

Để xử lý dữ liệu trong MySQL từ Python, bạn cần có trình điều khiển cơ sở dữ liệu để kết nối, và MySQL Connector/Python là đối tượng kết nối chuẩn được MySQL cung cấp dành riêng cho Python

Cập nhật trình kết nối mysql

Một số đặc điểm của mô-đun này

Bài viết này đã được đăng tại [free tuts. mạng lưới]

  • Hỗ trợ hầu hết tất cả các tính năng được cung cấp bởi MySQL phiên bản 5. 7. Nó cho phép bạn chuyển đổi giá trị tham số của bộ phân loại giữa các loại dữ liệu Python và MySQL
  • Được thiết kế dành riêng cho MySQL, nó hỗ trợ tất cả các phần mở rộng của MySQL như mệnh đề GIỚI HẠN
  • Cho phép bạn nén luồng dữ liệu giữa Python và máy chủ cơ sở dữ liệu MySQL bằng cách sử dụng giao thức nén. Nó hỗ trợ các kết nối bằng cách sử dụng TCP/IP Socket và kết nối TCP/IP an toàn bằng SSL
  • Là một API được khai thác bằng Python thuần túy. Điều đó có nghĩa là bạn không cần cài đặt bất kỳ thư viện máy khách MySQL hoặc bất kỳ mô-đun Python nào ngoại trừ thư viện tiêu chuẩn

Các phiên bản (version)

Bạn sẽ phải cài đặt các phiên bản chính xác của Python, MySQL và Connect / Python. Bảng sau đây minh họa các phiên bản tương thích của Connect / Python, MySQL và Python

Phiên bản trình kết nối/Python Phiên bản máy chủ MySQL Phiên bản Python được hỗ trợ8. 08. 0, 5. 7, 5. 6, 5. 53. 6, 3. 5, 3. 4, 2. 72. 25. 7, 5. 6, 5. 53. 5, 3. 4, 2. 72. 15. 7, 5. 6, 5. 53. 5, 3. 4, 2. 7, 2. 62. 05. 7, 5. 6, 5. 53. 5, 3. 4, 2. 7, 2. 61. 25. 7, 5. 6, 5. 5 (5. 1, 5. 0, 4. 1)3. 4, 3. 3, 3. 2, 3. 1, 2. 7, 2. 6

Cài đặt MySQL Connector/Python

Cài đặt điều kiện

Trước khi cài đặt MySQL Connector/Python, bạn phải làm những điều sau

  • Bạn phải có quyền Root hoặc Administrator thì mới có thể cài đặt
  • You must install Python on your host before

Lưu ý rằng quá trình cài đặt MySQL Connector / Python yêu cầu Python phải có trong PATH của hệ thống

Các bước cài đặt

MySQL Python Connector có sẵn trên pypi. org, làm điều đó, bạn có thể cài đặt nó bằng lệnh

pip uninstall mysql-connector-python
8

Lệnh

pip uninstall mysql-connector-python
8 cho phép bạn cài đặt trình kết nối Python Python trên bất kỳ Hệ điều hành nào, bao gồm Windows, macOS, Linux và Unix

pip install mysql-connector-python

Kết quả

Nếu bạn tìm thấy bất kỳ vấn đề nào trong khi cài đặt, bạn có thể chỉ định phiên bản chính xác cần cài đặt bằng lệnh sau

pip install mysql-connector-python==8.0.17

Lưu ý rằng để gỡ cài đặt MySQL Connector / Python hiện tại thì bạn sử dụng lệnh sau

pip uninstall mysql-connector-python

Lệnh nhắc lại sẽ xuất hiện, nhập Y để đồng ý và N để hủy bỏ

Proceed (y/n)? y

Kiểm tra cài đặt không thành công

Sau khi cài đặt MySQL Connector/Python, bạn cần kiểm tra để chắc chắn rằng nó hoạt động chính xác và bạn có thể kết nối với máy chủ cơ sở dữ liệu MySQL mà không gặp sự cố nào.

Để kiểm tra, bạn thực hiện các bước sau

Bước 1. Mở dòng lệnh Python

Bước 2. Nhập đoạn mã dưới đây vào

>>> import mysql.connector
>>> mysql.connector.connect(host='localhost',database='mysql',user='root',password='your pass')

Nếu bạn thấy kết quả xuất hiện như bên dưới thì bạn đã cài đặt thành công và MySQL đã được kết nối bởi Python Connector

<mysql.connector.connection.MySQLConnection object at 0x0187AE50>

2. Tải mẫu cơ sở dữ liệu để học xử lý MySQL trong Python

Để các bạn dễ thực hiện hơn thì mình sẽ gửi một cơ sở dữ liệu mẫu, đây là db mà ta sẽ thực hiện trong suốt quá trình làm việc với MySQL trong Python

Trước tiên hãy tải tệp này về, sau đó giải nén và đặt vào thư mục MySQL có định dạng như sau.

Proceed (y/n)? y
0

Tiếp theo, hãy đăng nhập vào MySQL bằng cách sử dụng công cụ mysql để chạy lệnh sau

mysql -u root -p

Nhập mật khẩu cho người dùng root

Enter password: ********

Please create a database name is python_mysql

mysql>create database python_mysql;

Sau đó chọn db python_mysql vừa tạo

mysql>use python_mysql;

Cuối cùng, hãy sử dụng lệnh sau để tải cơ sở dữ liệu mà bạn đã tải xuống

pip install mysql-connector-python==8.0.17
0

Vui lòng sử dụng lệnh sau để kiểm tra xem các bảng đã xuất hiện chưa nhé

pip install mysql-connector-python==8.0.17
1

Kết quả

pip install mysql-connector-python==8.0.17
2

* Lưu ý. Thực hiện vẫn còn một cách khác là bạn hãy sử dụng công cụ PHPMyAdmin nhé, đây là công cụ quản lý tiêu chuẩn của MySQL và bạn có thể thực hiện bằng thao tác giao diện rất trực quan

3. MySQL connection with Python

Để kết nối vào một hệ thống quản trị cơ sở dữ liệu bất kỳ, chúng ta cần một chuỗi kết nối bao gồm các thông tin để đăng nhập như. máy chủ, cơ sở dữ liệu, tên người dùng, mật khẩu

Lớp MySQLConnection yêu cầu chuỗi kết nối phải là một lệnh có cấu trúc như sau

pip install mysql-connector-python==8.0.17
3

in which

  • Proceed (y/n)? y
    1 là tên của cơ sở dữ liệu mà chúng ta đã tạo
  • Proceed (y/n)? y
    2 là tên tài khoản đăng nhập vào cơ sở dữ liệu
  • Proceed (y/n)? y
    3 là mật khẩu đăng nhập của người dùng

Bây giờ chúng ta sẽ viết một hàm kết nối và trả về đối tượng kết nối nhé

pip install mysql-connector-python==8.0.17
4

Run test test if results has format as after is ta connect to public

pip install mysql-connector-python==8.0.17
5

Những thao tác tiếp theo ta sẽ sử dụng kết quả trả về của hàm connect() để xử lý

4. Lấy dữ liệu MySQL trong Python

Để lấy dữ liệu của một bảng hoặc nhiều bảng, ta chạy lệnh select, và sau đây là hàm xử lý

Cách 1. Use method fetchone()

Phương thức

Proceed (y/n)? y
4 sẽ trả về hàng dữ liệu tiếp theo trong kết quả trả về, hoặc trả về
Proceed (y/n)? y
5 nếu kết quả trống

pip install mysql-connector-python==8.0.17
6

Cách sử dụng

pip install mysql-connector-python==8.0.17
7

Kết quả

cách 2. Use method fetchall()

Trong trường hợp dữ liệu trả về thị nhỏ ta có thể sử dụng phương thức

Proceed (y/n)? y
6, nó sẽ trả về tất cả dữ liệu mà câu truy vấn thực hiện được

pip install mysql-connector-python==8.0.17
8

Giải thích tương tự như ví dụ với phương thức

Proceed (y/n)? y
4, ngoại trừ phần gọi phương thức
Proceed (y/n)? y
8. Vì chúng tôi đã tải tất cả các hàng từ bảng
Proceed (y/n)? y
9 vào bộ nhớ nên có thể lấy tổng số hàng đã được trả lại bằng cách sử dụng thuộc tính
>>> import mysql.connector
>>> mysql.connector.connect(host='localhost',database='mysql',user='root',password='your pass')
0 của đối tượng
>>> import mysql.connector
>>> mysql.connector.connect(host='localhost',database='mysql',user='root',password='your pass')
1

* Lưu ý. Với dữ liệu lớn thì ta không nên sử dụng phương thức này bởi nó sẽ tốn nhiều tài nguyên để lưu trữ dữ liệu trả về, trường hợp xấu nhất đang làm ứng dụng bị chết

Cách 3. Use method fetchmany()

Đối với một bảng tương đối lớn thì cần có thời gian để tìm tải tất cả các hàng và trả về toàn bộ kết quả tập tin. Ngoài ra,

Proceed (y/n)? y
6 cần bổ sung bộ nhớ để lưu trữ toàn bộ kết quả tập tin trong bộ nhớ, điều này không hiệu quả

MySQL Connector/Python có phương thức

>>> import mysql.connector
>>> mysql.connector.connect(host='localhost',database='mysql',user='root',password='your pass')
3 trả về số hàng (n) tiếp theo của tệp kết quả, cho phép bạn cân bằng giữa thời gian truy xuất và không gian bộ nhớ

Đầu tiên hãy xây dựng một hàm có công cụ tra cứu về dòng dữ liệu số như tham số truyền vào

pip install mysql-connector-python==8.0.17
9

Trong hàm này, mình sử dụng năng suất để trả về kết quả ở định dạng iterator

Tiếp theo ta có thể sử dụng ham

>>> import mysql.connector
>>> mysql.connector.connect(host='localhost',database='mysql',user='root',password='your pass')
4 để lấy mỗi lần 10 hàng cho mỗi lần tìm nạp dữ liệu

pip uninstall mysql-connector-python
0

Quá đơn giản phải không các bạn?

5. Chèn dữ liệu vào MySQL trong Python

Ta only to change command select to command insert is being

Tuy nhiên, chúng ta không sử dụng vòng lặp, tại vì kết quả trả về của lệnh chèn không phải là danh sách. Thay vào đó ta sẽ kiểm tra xem lastrowid là bao nhiêu, nếu có tức là insert thành công, ngược lại là insert fail

pip uninstall mysql-connector-python
1

Cách sử dụng

pip uninstall mysql-connector-python
2

Mình chạy lệnh này với mẫu cơ sở dữ liệu thì thu được kết quả là

pip uninstall mysql-connector-python
3

6. Cập nhật dữ liệu MySQL bằng Python

Cập nhật dữ liệu thì ta chạy lệnh update trong MySQL, kết hợp với kết nối đối tượng để xử lý

pip uninstall mysql-connector-python
4

Cách sử dụng

pip uninstall mysql-connector-python
5

7. Delete MySQL data by Python

To delete data, ta will run command delete in MySQL

pip uninstall mysql-connector-python
6

Cách sử dụng

pip uninstall mysql-connector-python
7

Lời kết. Trên là bài hướng dẫn cách xử lý cơ sở dữ liệu MySQL bằng Python. Qua bài này bạn đã học được những kiến ​​thức như sau