Làm cách nào để hiển thị bảng cơ sở dữ liệu trong html bằng python?

Bạn sẽ tìm hiểu các thao tác MySQL SELECT sau đây từ Python bằng cách sử dụng mô-đun 'Trình kết nối MySQL'

  • Thực thi truy vấn CHỌN và xử lý tập kết quả được truy vấn trả về trong Python
  • Sử dụng các biến Python trong mệnh đề where của truy vấn CHỌN để chuyển các giá trị động
  • Sử dụng các phương thức
    Total number of rows in Laptop is:  7
    Printing each laptop record
    
    Id =  1
    Name =  Lenovo ThinkPad P71
    Price  =  6459.0
    Purchase date  =  2019-08-14 
    
    Id =  2
    Name =  Area 51M
    Price  =  6999.0
    Purchase date  =  2019-04-14 
    
    Id =  3
    Name =  MacBook Pro
    Price  =  2499.0
    Purchase date  =  2019-06-20 
    
    Id =  4
    Name =  HP Pavilion Power
    Price  =  1999.0
    Purchase date  =  2019-01-11 
    
    Id =  5
    Name =  MSI WS75 9TL-496
    Price  =  5799.0
    Purchase date  =  2019-02-27 
    
    Id =  6
    Name =  Microsoft Surface
    Price  =  2330.0
    Purchase date  =  2019-07-23 
    
    Id =  7
    Name =  Acer Predator Triton
    Price  =  2435.0
    Purchase date  =  2019-08-15 
    
    MySQL connection is closed
    
    9,
    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    0 và
    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    1 của lớp con trỏ để tìm nạp tất cả hoặc các hàng giới hạn từ một bảng

Đọc thêm

  • Giải bài tập Python MySQL
  • Đọc Hướng dẫn Python MySQL [Hướng dẫn đầy đủ]

Mục lục

  • điều kiện tiên quyết
  • Các bước để tìm nạp hàng từ bảng cơ sở dữ liệu MySQL
  • Sử dụng các biến Python làm tham số trong MySQL Select Query
  • Chọn các hàng giới hạn từ bảng MySQL bằng cách sử dụng tìm nạp và tìm nạp
    • Ví dụ để lấy ít hàng hơn từ bảng MySQL bằng cách sử dụng tìm nạp của con trỏ
    • Tìm nạp một hàng từ bảng MySQL bằng tìm nạp của con trỏ
  • Python Tìm nạp hàng MySQL bằng cách sử dụng tên cột
  • Chọn giá trị cột MySQL thành Biến Python
  • Bước tiếp theo

điều kiện tiên quyết

Trước khi di chuyển xa hơn, hãy chắc chắn rằng bạn có những điều sau đây tại chỗ. –

  • Tên người dùng và mật khẩu để kết nối MySQL
  • Tên bảng MySQL mà bạn muốn chọn dữ liệu

Đối với bài học này, tôi đang sử dụng bảng 'Máy tính xách tay' có trong máy chủ MySQL của tôi

Nếu một bảng không có trong máy chủ MySQL của bạn, bạn có thể tham khảo bài viết của chúng tôi để tạo một bảng MySQL từ Python

Bạn cũng có thể tải xuống tệp truy vấn SQL chứa các truy vấn SQL để tạo bảng và dữ liệu để bạn có thể sử dụng bảng này cho các thao tác INSERT của mình

Bảng máy tính xách tay MySQL có dữ liệu

Các bước để tìm nạp hàng từ bảng cơ sở dữ liệu MySQL

Thực hiện theo các bước sau. –

Cách chọn từ bảng MySQL bằng Python

  1. Kết nối với MySQL từ Python

    Tham khảo kết nối cơ sở dữ liệu MySQL trên Python để kết nối với cơ sở dữ liệu MySQL từ Python bằng mô-đun MySQL Connector

  2. Xác định truy vấn CHỌN SQL

    Tiếp theo, hãy chuẩn bị một truy vấn SQL SELECT để tìm nạp các hàng từ một bảng. Bạn có thể chọn tất cả hoặc các hàng giới hạn dựa trên yêu cầu của bạn. Nếu điều kiện where được sử dụng, thì nó quyết định số lượng hàng cần tìm nạp.
    Ví dụ,

    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    2. Điều này sẽ trả về hàng số 10.

  3. Nhận đối tượng con trỏ từ kết nối

    Tiếp theo, sử dụng phương thức

    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    3 để tạo đối tượng con trỏ. Phương thức này tạo một đối tượng
    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    4 mới

  4. Thực thi truy vấn SELECT sử dụng phương thức exec[]

    Thực hiện truy vấn chọn bằng phương thức

    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    5

  5. Trích xuất tất cả các hàng từ một kết quả

    Sau khi thực hiện thành công thao tác Chọn, hãy sử dụng phương thức

    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    6 của đối tượng con trỏ để lấy tất cả các hàng từ kết quả truy vấn. nó trả về một danh sách các hàng

  6. Lặp lại từng hàng

    Lặp lại danh sách hàng bằng vòng lặp for và truy cập từng hàng riêng lẻ [Truy cập dữ liệu cột của từng hàng bằng tên cột hoặc số chỉ mục. ]

  7. Đóng đối tượng con trỏ và đối tượng kết nối cơ sở dữ liệu

    sử dụng phương pháp

    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    7 và
    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    8 để đóng các kết nối mở sau khi công việc của bạn hoàn thành

Python chọn từ Bảng MySQL

Ví dụ

Trong ví dụ này, chúng tôi đang tìm nạp tất cả các hàng từ bảng Máy tính xách tay và sao chép chúng vào các biến Python để chúng tôi có thể sử dụng nó trong chương trình của mình

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
0

đầu ra. –

Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed

Ghi chú. Sử dụng các phương pháp sau để tìm nạp dữ liệu được trả về bởi một

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
5

  • cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    30 để lấy tất cả các hàng
  • cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    31 để tìm nạp một hàng
  • cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    32 để tìm nạp các hàng giới hạn

Sử dụng các biến Python làm tham số trong MySQL Select Query

Chúng ta thường cần truyền các biến cho SQL select query trong mệnh đề where để kiểm tra một số điều kiện. Giả sử ứng dụng muốn lấy giá máy tính xách tay bằng cách cung cấp bất kỳ id máy tính xách tay nào khi chạy. Để xử lý yêu cầu như vậy, chúng ta cần sử dụng truy vấn được tham số hóa

Truy vấn được tham số hóa là một truy vấn trong đó các phần giữ chỗ [_______133] được sử dụng cho các tham số và các giá trị tham số được cung cấp tại thời điểm thực hiện

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]

Ví dụ

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
3

đầu ra

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
9

Chọn các hàng giới hạn từ bảng MySQL bằng cách sử dụng tìm nạp và tìm nạp

Trong một số trường hợp, việc tìm nạp tất cả các hàng từ một bảng là một nhiệm vụ tốn thời gian nếu một bảng chứa hàng nghìn hàng

Nếu tìm nạp tất cả các hàng, chúng tôi cần thêm dung lượng và thời gian xử lý. Vì vậy, điều cần thiết là sử dụng phương thức

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
0 của lớp con trỏ để tìm nạp ít hàng hơn

Cú pháp của con trỏ

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
0

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
2

Các phương thức fetchmany[] của con trỏ trả về số hàng được chỉ định bởi đối số kích thước, giá trị mặc định của đối số kích thước là một. Ví dụ: nếu kích thước được chỉ định là 5, thì nó sẽ trả về năm hàng

Ghi chú. Nếu một bảng chứa một hàng nhỏ hơn kích thước đã chỉ định, thì sẽ có ít hàng hơn được trả về

Cú pháp của 

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
1

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
4

Phương thức này tìm nạp tập hợp các hàng tiếp theo của kết quả truy vấn và trả về một danh sách các bộ dữ liệu. Nếu không còn hàng nào nữa, nó sẽ trả về một danh sách trống

Phương thức này trả về một bản ghi hoặc Không có nếu không còn hàng nào nữa

Phương thức

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
1 được sử dụng nội bộ bởi
Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed
9 và
cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
0 để tìm nạp các hàng

Ví dụ để lấy ít hàng hơn từ bảng MySQL bằng cách sử dụng tìm nạp của con trỏ

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
8

đầu ra

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
9

Ghi chú. Nếu bạn gặp lỗi MySQL Unread result set buffered=True trong kết nối như

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
90

Tìm nạp một hàng từ bảng MySQL bằng tìm nạp của con trỏ

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
1

đầu ra. –

Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed
0

Python Tìm nạp hàng MySQL bằng cách sử dụng tên cột

Bạn cũng có thể truy xuất kết quả bằng tên cột thay vì id. Ví dụ, bạn muốn làm một cái gì đó như thế này

Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed
1

Nếu bạn cố gắng tìm nạp dữ liệu trực tiếp bằng tên cột, bạn sẽ nhận được thông báo

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
91

Để chọn các bản ghi từ bảng MySQL của tôi bằng tên cột, chúng ta chỉ cần thay đổi cách tạo con trỏ. Thay thế việc tạo con trỏ tiêu chuẩn bằng đoạn mã sau và bạn đã sẵn sàng tìm nạp các bản ghi từ bảng MySQL của tôi bằng tên cột

Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed
2

Tại sao đặt

cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
92?

Trong ví dụ sau, tôi đã chọn tất cả các bản ghi từ bảng MySQL của mình bằng cách sử dụng tên cột thay vì chỉ mục số nguyên của cột

Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed
3

đầu ra

Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed
4

Chọn giá trị cột MySQL thành Biến Python

Hãy xem cách thực thi Truy vấn SQL CHỌN sau đây và lưu trữ giá trị cột của bảng vào một biến Python để xử lý thêm

Nếu bạn thực thi đoạn mã dưới đây, bạn sẽ nhận được {u’Price’. u'7000′}

Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed
5

Bạn có thể nhận được đầu ra như

Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed
6

Hãy xem cách chỉ trích xuất giá trị cột [7000] và lưu nó vào một biến để thực hiện một số phép tính để bạn có thể giảm giá 10% cho giá trị đó

Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed
7

đầu ra

Total number of rows in Laptop is:  7
Printing each laptop record

Id =  1
Name =  Lenovo ThinkPad P71
Price  =  6459.0
Purchase date  =  2019-08-14 

Id =  2
Name =  Area 51M
Price  =  6999.0
Purchase date  =  2019-04-14 

Id =  3
Name =  MacBook Pro
Price  =  2499.0
Purchase date  =  2019-06-20 

Id =  4
Name =  HP Pavilion Power
Price  =  1999.0
Purchase date  =  2019-01-11 

Id =  5
Name =  MSI WS75 9TL-496
Price  =  5799.0
Purchase date  =  2019-02-27 

Id =  6
Name =  Microsoft Surface
Price  =  2330.0
Purchase date  =  2019-07-23 

Id =  7
Name =  Acer Predator Triton
Price  =  2435.0
Purchase date  =  2019-08-15 

MySQL connection is closed
8

Hãy hiểu ví dụ này

  • Bạn có thể thấy trong ví dụ trên sau khi tìm nạp một hàng bằng cách sử dụng
    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    31, chúng tôi đã chuyển đổi giá trị cột thành loại phù hợp bằng cách sử dụng
    cursor.execute["SELECT Price FROM Laptop WHERE id = "ID from application"]
    94
  • Chúng tôi đã truy xuất giá trị chỉ mục thứ 0 từ tập hợp kết quả

Bước tiếp theo

Để thực hành những gì bạn đã học trong bài viết này, vui lòng giải một dự án Bài tập về cơ sở dữ liệu Python để thực hành và thành thạo các thao tác với Cơ sở dữ liệu Python

Làm cách nào để hiển thị dữ liệu từ cơ sở dữ liệu trong HTML bằng python?

nhập mysql. trình kết nối nhập webbrowser conn = mysql. kết nối. connect[user='root', password='', host='localhost',database='company'] nếu kết nối. in ["Đã kết nối thành công"] khác. print ["Kết nối không được thiết lập"] select_employee = """CHỌN * TỪ nhân viên""" con trỏ = conn

Làm cách nào để hiển thị dữ liệu từ cơ sở dữ liệu trong python?

Các bước tìm nạp hàng từ bảng cơ sở dữ liệu MySQL .
Kết nối với MySQL từ Python. .
Xác định truy vấn CHỌN SQL. .
Nhận đối tượng con trỏ từ kết nối. .
Thực thi truy vấn SELECT sử dụng phương thức exec[]. .
Trích xuất tất cả các hàng từ một kết quả. .
Lặp lại từng hàng. .
Đóng đối tượng con trỏ và đối tượng kết nối cơ sở dữ liệu

Làm cách nào để tạo bảng trong HTML bằng python?

thay thế = thay thế. split["\n"] print[replace] conto = conto. định dạng[*thay thế]
html = html. replace["", conto] with open[myfile := "table.html", "w"] as file:.
tập tin. viết [html] hệ điều hành. tệp bắt đầu [tệp của tôi]

Làm cách nào để kết nối cơ sở dữ liệu MySQL với trang web HTML bằng python?

Cách kết nối cơ sở dữ liệu MySQL bằng Python .
Cài đặt mô-đun trình kết nối MySQL. Sử dụng lệnh pip để cài đặt trình kết nối MySQL Python. .
Nhập mô-đun trình kết nối MySQL. .
Sử dụng phương thức connect[]. .
Sử dụng phương thức con trỏ []. .
Sử dụng phương thức exec[]. .
Trích xuất kết quả bằng cách sử dụng hàm tìm nạp [].
Đóng con trỏ và các đối tượng kết nối

Chủ Đề