Thứ ba, 02/06/2020 | 00:00 GMT+7
Nội dung chính ShowShow
- Yêu cầu
- Bước 1 - Tạo kết nối với database SQLite
- Bước 2 - Thêm dữ liệu vào database SQLite
- Bước 3 - Đọc dữ liệu từ database SQLite
- Bước 4 - Sửa đổi dữ liệu trong database SQLite
- Lưu ý hàng cho cursor.execute["INSERT INTO fish VALUES ['Sammy', 'shark', 1]"] cursor.execute["INSERT INTO fish VALUES ['Jamie', 'cuttlefish', 7]"] 4 bây giờ có giá trị là print[connection.total_changes] 07 cho cột cursor.execute["INSERT INTO fish VALUES ['Sammy', 'shark', 1]"] cursor.execute["INSERT INTO fish VALUES ['Jamie', 'cuttlefish', 7]"] 1 của nó.
- Bước 5 - Sử dụng print[connection.total_changes] 30 câu lệnh để tự động dọn dẹp
SQLite là một database SQL dựa trên file , độc lập. SQLite đi kèm với Python và được dùng trong bất kỳ ứng dụng Python nào của bạn mà không cần phải cài đặt bất kỳ phần mềm bổ sung nào.
Trong hướng dẫn này, ta sẽ xem xét mô-đun
print[connection.total_changes]
7 trong Python 3 . Ta sẽ tạo kết nối đến database SQLite, thêm bảng vào database đó, chèn dữ liệu vào bảng đó, đọc và sửa đổi dữ liệu trong bảng đó.Đối với hướng dẫn này, ta sẽ làm việc chủ yếu với danh mục cá mà ta cần sửa đổi khi cá được thêm vào hoặc xóa khỏi bể cá hư cấu.
Yêu cầu
Bước 1 - Tạo kết nối với database SQLite
Bước 2 - Thêm dữ liệu vào database SQLite
- Bước 3 - Đọc dữ liệu từ database SQLite
- Bước 4 - Sửa đổi dữ liệu trong database SQLite
Bước 1 - Tạo kết nối với database SQLite
Bước 2 - Thêm dữ liệu vào database SQLite
Bước 3 - Đọc dữ liệu từ database SQLite
Bước 4 - Sửa đổi dữ liệu trong database SQLiteLưu ý hàng cho cursor.execute["INSERT INTO fish VALUES ['Sammy', 'shark', 1]"] cursor.execute["INSERT INTO fish VALUES ['Jamie', 'cuttlefish', 7]"] 4 bây giờ có giá trị là print[connection.total_changes] 07 cho cột cursor.execute["INSERT INTO fish VALUES ['Sammy', 'shark', 1]"] cursor.execute["INSERT INTO fish VALUES ['Jamie', 'cuttlefish', 7]"] 1 của nó.
Bước 5 - Sử dụng print[connection.total_changes] 30 câu lệnh để tự động dọn dẹpSQLite là một database SQL dựa trên file , độc lập. SQLite đi kèm với Python và được dùng trong bất kỳ ứng dụng Python nào của bạn mà không cần phải cài đặt bất kỳ phần mềm bổ sung nào.
Trong hướng dẫn này, ta sẽ xem xét mô-đunprint[connection.total_changes]
7 trong Python 3 . Ta sẽ tạo kết nối đến database SQLite, thêm bảng vào database đó, chèn dữ liệu vào bảng đó, đọc và sửa đổi dữ liệu trong bảng đó. Đối với hướng dẫn này, ta sẽ làm việc chủ yếu với danh mục cá mà ta cần sửa đổi khi cá được thêm vào hoặc xóa khỏi bể cá hư cấu.Để tận dụng tối đa hướng dẫn này, bạn nên làm quen với lập trình bằng Python và một số kiến thức cơ bản về SQL.
Bạn có thể xem lại các hướng dẫn này để biết thông tin cơ bản cần thiết:2 vàoprint[connection.total_changes]
9 Cách viết mã bằng Python3Bước 2 - Thêm dữ liệu vào database SQLite
Giới thiệu về Truy vấn trong MySQL
Khi ta kết nối với database SQLite, ta đang truy cập dữ liệu cuối cùng nằm trong một file trên máy tính của ta . Database SQLite là công cụ SQL có đầy đủ tính năng được dùng cho nhiều mục đích. Hiện tại, ta sẽ xem xét một database theo dõi số lượng cá tại một bể cá giả tưởng.Ta có thể kết nối với database SQLite bằng module Python
print[connection.total_changes]
7 :import sqlite3 connection = sqlite3.connect["aquarium.db"]
print[connection.total_changes]
9 cấp cho chương trình Python của ta quyền truy cập vào module print[connection.total_changes]
7 . Hàm Output
0
1 trả về một đối tượng Output
0
2 mà ta sẽ sử dụng để tương tác với database SQLite được giữ trong file Output
0
3 Các Output
0
3 file được tạo ra tự động bởi Output
0
1 nếu Output
0
3 không tồn tại trên máy tính của ta . Ta có thể xác minh ta đã tạo thành công đối tượng Nếu bất cứ lúc nào, ta thấy mình muốn bắt đầu lại hướng dẫn này, ta có thể xóa file | 3 khỏi máy tính của bạn . | 1 |
Lưu ý: Cũng có thể kết nối với database SQLite nằm hoàn toàn trong bộ nhớ [chứ không phải trong file ] bằng cách chuyển chuỗi đặc biệt | 82 vào 9 | 7 |
0 1 . Ví dụ:
print[connection.total_changes]
64 . A print[connection.total_changes]
62 Database SQLite sẽ không xuất hiện ngay khi chương trình Python của bạn thoát. Điều này có thể thuận tiện nếu bạn muốn một sandbox tạm thời để thử một cái gì đó trong SQLite và không cần lưu giữ bất kỳ dữ liệu nào sau khi chương trình của bạn thoát. Cũng có thể kết nối với database SQLite nằm hoàn toàn trong bộ nhớ [chứ không phải trong file ] bằng cách chuyển chuỗi đặc biệt print[connection.total_changes]
62 vào Output
0
1 . Ví dụ: print[connection.total_changes]
64 . A print[connection.total_changes]
62 Database SQLite sẽ không xuất hiện ngay khi chương trình Python của bạn thoát. Điều này có thể thuận tiện nếu bạn muốn một sandbox tạm thời để thử một cái gì đó trong SQLite và không cần lưu giữ bất kỳ dữ liệu nào sau khi chương trình của bạn thoát. Bước 2 - Thêm dữ liệu vào database SQLite Bây giờ ta đã kết nối với Output
0
3 database SQLite, ta có thể bắt đầu chèn và đọc dữ liệu từ nó. Trong database SQL, dữ liệu được lưu trữ trong các bảng. Các bảng xác định một tập hợp các cột và chứa 0 hoặc nhiều hàng với dữ liệu cho mỗi cột được xác định.Bây giờ ta đã tạo một bảng, ta có thể chèn các hàng dữ liệu vào đó:
print[connection.total_changes]
0Ta gọi
print[connection.total_changes]
13 hai lần: một lần để chèn một hàng cho cá mập print[connection.total_changes]
04 trong bể Output
0
13 và một lần để chèn một hàng cho mực nang print[connection.total_changes]
06 trong bể Output
0
15 . Output
0
16 là một câu lệnh SQL cho phép ta thêm các hàng vào một bảng.Trong phần tiếp theo, ta sẽ sử dụng câu lệnh SQL
Output
0
17 để kiểm tra các hàng mà ta vừa chèn vào bảng print[connection.total_changes]
67 .Bước 3 - Đọc dữ liệu từ database SQLite
Trong Bước 2, ta đã thêm hai hàng vào bảng SQLite có tên là
print[connection.total_changes]
67 . Ta có thể truy xuất các hàng đó bằng Output
0
17 SQL:print[connection.total_changes]
1Nếu ta chạy mã này, ta sẽ thấy kết quả như sau:
Output
0
1Hàm
print[connection.total_changes]
13 chạy Output
0
17 để truy xuất giá trị cho các cột print[connection.total_changes]
69 , print[connection.total_changes]
0 0 và print[connection.total_changes]
01 trong bảng print[connection.total_changes]
67 . Output
0
17 truy xuất tất cả các kết quả của Output
0
17 . Khi ta Output
0
19 ta thấy một danh sách gồm hai bộ giá trị. Mỗi bộ có ba mục nhập; một mục nhập cho mỗi cột ta đã chọn từ bảng print[connection.total_changes]
67 . Hai bộ giá trị có dữ liệu mà ta đã chèn trong Bước 2: một bộ cho print[connection.total_changes]
03 print[connection.total_changes]
04 và một bộ cho print[connection.total_changes]
05 print[connection.total_changes]
06 .Nếu ta muốn truy xuất các hàng trong bảng
print[connection.total_changes]
67 phù hợp với một bộ tiêu chí cụ thể, ta có thể sử dụng Output
0
06 :Output
0
1Nếu ta chạy điều này, ta sẽ thấy kết quả như sau:
Output
0
0Như với ví dụ trước,
Output
0
07 cho phép ta tìm nạp tất cả các kết quả của một Output
0
17 . Output
0
06 trong Output
0
17 lọc các hàng có giá trị của print[connection.total_changes]
69 là Output
0
82 . Chú ý rằng ta sử dụng Output
0
83 để thay thế biến Output
0
82 của ta vào Output
0
17 . Ta dự kiến sẽ chỉ khớp một hàng và thực sự ta chỉ thấy hàng dành cho print[connection.total_changes]
06 mà print[connection.total_changes]
05 trả lại.Cảnh báo: Không bao giờ sử dụng các phép toán chuỗi Python để tạo động một chuỗi câu lệnh SQL. Sử dụng các hoạt động chuỗi Python để tập hợp một chuỗi câu lệnh SQL khiến bạn dễ bị tấn công SQL injection . Các cuộc tấn công SQL injection được dùng để ăn cắp, thay đổi hoặc sửa đổi dữ liệu được lưu trữ trong database của bạn. Luôn sử dụng dấu
Output
0
43 trình giữ chỗ trong câu lệnh SQL của bạn để thay thế động các giá trị từ chương trình Python của bạn. Output
0
89 một bộ giá trị làm đối số thứ hai cho Output
0
89 để liên kết các giá trị của bạn với câu lệnh SQL. Mô hình thay thế này cũng được trình bày ở đây và trong các phần khác của hướng dẫn này. Không bao giờ sử dụng các phép toán chuỗi Python để tạo động một chuỗi câu lệnh SQL. Sử dụng các hoạt động chuỗi Python để tập hợp một chuỗi câu lệnh SQL khiến bạn dễ bị tấn công SQL injection . Các cuộc tấn công SQL injection được dùng để ăn cắp, thay đổi hoặc sửa đổi dữ liệu được lưu trữ trong database của bạn. Luôn sử dụng dấu Output
0
83 trình giữ chỗ trong câu lệnh SQL của bạn để thay thế động các giá trị từ chương trình Python của bạn. Output
0
8 9 một bộ giá trị làm đối số thứ hai cho Output
0
89 để liên kết các giá trị của bạn với câu lệnh SQL. Mô hình thay thế này cũng được trình bày ở đây và trong các phần khác của hướng dẫn này.3 trình giữ chỗ trong câu lệnh SQL của bạn để thay thế động các giá trị từ chương trình Python của bạn. Output
0
89 một bộ giá trị làm đối số thứ hai cho Output
0
89 để liên kết các giá trị của bạn với câu lệnh SQL. Mô hình thay thế này cũng được trình bày ở
đây và trong các phần khác của hướng dẫn này. Không bao giờ sử dụng các phép toán chuỗi Python để tạo động một chuỗi câu lệnh SQL. Sử dụng các hoạt động chuỗi Python để tập hợp một chuỗi câu lệnh SQL khiến bạn dễ bị tấn công SQL injection . Các cuộc tấn công SQL injection được dùng để ăn cắp, thay đổi hoặc sửa đổi dữ liệu được lưu trữ trong database của bạn. Luôn sử dụng dấu Output
0
83 trình giữ chỗ trong câu lệnh SQL của bạn để thay thế động các giá trị từ chương trình Python của bạn. Output
0
8
9 một bộ giá trị làm đối số thứ hai cho Output
0
89 để liên kết các giá trị của bạn với câu lệnh SQL. Mô hình thay thế này cũng được trình bày ở đây và trong các phần khác của hướng dẫn này.Bước 4 - Sửa đổi dữ liệu trong database SQLite
Các hàng trong database SQLite có thể được sửa đổi bằng cách sử dụng câu lệnh SQL
print[connection.total_changes]
01 và print[connection.total_changes]
02 .Ví dụ, giả sử rằng con cá mập Sammy đã được chuyển đến bể số 2. Ta có thể thay đổi hàng của Sammy trong bảng
print[connection.total_changes]
67 để phản ánh sự thay đổi này:Output
0
8Ta đưa ra câu lệnh
print[connection.total_changes]
01 SQL để thay đổi print[connection.total_changes]
01 của print[connection.total_changes]
04 thành giá trị mới của nó là print[connection.total_changes]
07 . Output
0
06 trong câu lệnh print[connection.total_changes]
01 đảm bảo ta chỉ thay đổi giá trị của print[connection.total_changes]
01 nếu một hàng có print[connection.total_changes]
11 .Nếu ta chạy
Output
0
17 sau, ta có thể xác nhận bản cập nhật của ta đã được thực hiện chính xác:print[connection.total_changes]
1Nếu ta chạy điều này, ta sẽ thấy kết quả như sau:
print[connection.total_changes]
1Như với ví dụ trước,
Output
0
07 cho phép ta tìm nạp tất cả các kết quả của một Output
0
17 . Output
0
06 trong Output
0
17 lọc các hàng có giá trị của print[connection.total_changes]
69 là Output
0
82 . Chú ý rằng ta sử dụng Output
0
83 để thay thế biến Output
0
82 của ta vào Output
0
17 . Ta dự kiến sẽ chỉ khớp một hàng và thực sự ta chỉ thấy hàng dành cho print[connection.total_changes]
06 mà print[connection.total_changes]
05 trả lại.Cảnh báo: Không bao giờ sử dụng các phép toán chuỗi Python để tạo động một chuỗi câu lệnh SQL. Sử dụng các hoạt động chuỗi Python để tập hợp một chuỗi câu lệnh SQL khiến bạn dễ bị tấn công SQL injection . Các cuộc tấn công SQL injection được dùng để ăn cắp, thay đổi hoặc sửa đổi dữ liệu được lưu trữ trong database của bạn. Luôn sử dụng dấu
Output
0
43 trình giữ chỗ trong câu lệnh SQL của bạn để thay thế động các giá trị từ chương trình Python của bạn. Output
0
89 một bộ giá trị làm đối số thứ hai cho Output
0
89 để liên kết các giá trị của bạn với câu lệnh SQL. Mô hình thay thế này cũng được trình bày ở đây và trong các phần khác của hướng dẫn này. Không bao giờ sử dụng các phép toán chuỗi Python để tạo động một chuỗi câu lệnh SQL. Sử dụng các hoạt động chuỗi Python để tập hợp một chuỗi câu lệnh SQL khiến bạn dễ bị tấn công SQL injection . Các cuộc tấn công SQL injection được dùng để ăn cắp, thay đổi hoặc sửa đổi dữ liệu được lưu trữ trong database của bạn. Luôn sử dụng dấu Output
0
83 trình giữ chỗ trong câu lệnh SQL của bạn để thay thế động các giá trị từ chương trình Python của bạn. Output
0
8 9 một bộ giá trị làm đối số thứ hai cho Output
0
89 để liên kết các giá trị của bạn với câu lệnh SQL. Mô hình thay thế này cũng được trình bày ở đây và trong các phần khác của hướng dẫn này.Bước 4 - Sửa đổi dữ liệu trong database SQLite
print[connection.total_changes]
2Các hàng trong database SQLite có thể được sửa đổi bằng cách sử dụng câu lệnh SQL
print[connection.total_changes]
01 và print[connection.total_changes]
02 .Ví dụ, giả sử rằng con cá mập Sammy đã được chuyển đến bể số 2. Ta có thể thay đổi hàng của Sammy trong bảng
print[connection.total_changes]
67 để phản ánh sự thay đổi này:print[connection.total_changes]
1Ta đưa ra câu lệnh
print[connection.total_changes]
01 SQL để thay đổi print[connection.total_changes]
01 của print[connection.total_changes]
04 thành giá trị mới của nó là print[connection.total_changes]
07 . Output
0
06 trong câu lệnh print[connection.total_changes]
01 đảm bảo ta chỉ thay đổi giá trị của print[connection.total_changes]
0 1 nếu một hàng có print[connection.total_changes]
11 .Output
0
0Nếu ta chạy
Output
0
17 sau, ta có thể xác nhận bản cập nhật của ta đã được thực hiện chính xác:Lưu ý hàng cho cursor.execute["INSERT INTO fish VALUES ['Sammy', 'shark', 1]"] cursor.execute["INSERT INTO fish VALUES ['Jamie', 'cuttlefish', 7]"] 4 bây giờ có giá trị là print[connection.total_changes] 07 cho cột cursor.execute["INSERT INTO fish VALUES ['Sammy', 'shark', 1]"] cursor.execute["INSERT INTO fish VALUES ['Jamie', 'cuttlefish', 7]"] 1 của nó.
Giả sử rằng con cá mập Sammy đã được thả vào tự nhiên và không còn được giữ trong bể cá nữa. Vì Sammy không còn sống ở thủy cung, nên việc loại bỏ hàng
print[connection.total_changes]
04 khỏi bàn print[connection.total_changes]
67 hợp lý.Phát hành câu lệnh SQL
print[connection.total_changes]
02 để xóa một hàng:Ta đưa ra câu lệnh
print[connection.total_changes]
01 SQL để thay đổi print[connection.total_changes]
01 của print[connection.total_changes]
04 thành giá trị mới của nó là print[connection.total_changes]
07 . Output
0
06 trong câu lệnh print[connection.total_changes]
01 đảm bảo ta chỉ thay đổi giá trị của print[connection.total_changes]
0 1 nếu một hàng có print[connection.total_changes]
11 .Output
0
0Nếu ta chạy
Output
0
17 sau, ta có thể xác nhận bản cập nhật của ta đã được thực hiện chính xác:Lưu ý hàng cho cursor.execute["INSERT INTO fish VALUES ['Sammy', 'shark', 1]"] cursor.execute["INSERT INTO fish VALUES ['Jamie', 'cuttlefish', 7]"] 4 bây giờ có giá trị là print[connection.total_changes] 07 cho cột cursor.execute["INSERT INTO fish VALUES ['Sammy', 'shark', 1]"] cursor.execute["INSERT INTO fish VALUES ['Jamie', 'cuttlefish', 7]"] 1 của nó.
print[connection.total_changes]
6Giả sử rằng con cá mập Sammy đã được thả vào tự nhiên và không còn được giữ trong bể cá nữa. Vì Sammy không còn sống ở thủy cung, nên việc loại bỏ hàng
print[connection.total_changes]
04 khỏi bàn print[connection.total_changes]
67 hợp lý.Phát hành câu lệnh SQL
print[connection.total_changes]
02 để xóa một hàng:print[connection.total_changes]
02 SQL để xóa hàng cho print[connection.total_changes]
04 the print[connection.total_changes]
03 . Output
0
06 trong câu print[connection.total_changes]
02 đảm bảo ta chỉ xóa một hàng nếu hàng đó có print[connection.total_changes]
11 .print[connection.total_changes]
5Output
0
17 sau, ta có thể xác nhận việc xóa của ta đã được thực hiện chính xác:Nếu ta chạy mã này, ta sẽ thấy kết quả như sau:Lưu ý hàng dành cho
print[connection.total_changes]
03 print[connection.total_changes]
04 đã không còn, và chỉ còn lại print[connection.total_changes]
05 print[connection.total_changes]
06 .Bước 5 - Sử dụng print[connection.total_changes] 30 câu lệnh để tự động dọn dẹp
Trong hướng dẫn này, ta đã sử dụng hai đối tượng chính để tương tác với database SQLite
print[connection.total_changes]
31 aqua.db print[connection.total_changes]
31 : đối tượng Output
0
2 có tên là Output
0
7 và đối tượng print[connection.total_changes]
10 có tên là print[connection.total_changes]
36 .2020-05-19
Cách cài đặt Phân phối Python Anaconda trên Ubuntu 20.04 [Khởi động nhanh]
2020-05-19
Cách cài đặt Phân phối Python Anaconda trên Ubuntu 20.04
2020-05-06
Cách cài đặt Python 3 và thiết lập môi trường lập trình trên server Ubuntu 20.04
2020-04-24
Cách cài đặt Python 3 và thiết lập môi trường lập trình trên server Ubuntu 18.04
2020-04-24
Cách cài đặt Python 3 và thiết lập môi trường lập trình trên Ubuntu 20.04 [Quickstart]
2020-04-24
Cách cài đặt Python 3 và thiết lập môi trường lập trình trên Ubuntu 18.04 [Quickstart]
2020-04-24
Cách cài đặt Python 3 và thiết lập môi trường lập trình trên CentOS 8
2020-04-10
Cách bắt đầu với Python trong Visual Studio Code
2020-04-09
Cách bắt đầu với Thư viện yêu cầu bằng Python
2020-01-29