Tuyên bố chuẩn bị mysql Python
- [Người hướng dẫn] Các truy vấn đã chuẩn bị sẵn là một công cụ mạnh mẽ trong hầu hết các ứng dụng cơ sở dữ liệu quan hệ. Chúng ta hãy xem nhanh cách thức hoạt động của nó. Đây là db_prepared. py từ chương một của các tệp bài tập. Một câu lệnh đã chuẩn bị là một câu lệnh được công cụ cơ sở dữ liệu phân tích cú pháp một lần và sau đó được sử dụng nhiều lần ngay cả với các giá trị khác nhau. Ở đây, chúng tôi đang sử dụng MySQL và bạn lưu ý rằng tôi có MY_HOST, USER và PASSWORD là Constance giúp đường kết nối sạch hơn rất nhiều. Và sau đó bạn nhận thấy rằng khi tôi tạo con trỏ của mình, tôi có tùy chọn này ở đây đã chuẩn bị=True. MySQL theo mặc định không cung cấp các câu lệnh đã chuẩn bị sẵn và bạn luôn muốn sử dụng các câu lệnh đã chuẩn bị sẵn. Và do đó, bằng cách đặt cờ đã chuẩn bị này trong đối tượng con trỏ, giờ đây bạn có thể sử dụng các câu lệnh đã chuẩn bị. Vì vậy, mỗi khi bạn sử dụng MySQL, bạn sẽ luôn muốn thiết lập chuẩn bị=True. Chúng ta hãy xem tại sao. Ở đây bạn chú ý chúng tôi bỏ bảng, tạo bảng, chúng tôi đang làm… Show
Tải xuống các tệp mà người hướng dẫn sử dụng để dạy khóa học. Theo dõi và học hỏi bằng cách xem, nghe và thực hành Xem các khóa học trên thiết bị di động của bạn mà không cần kết nối internet. Tải xuống các khóa học bằng ứng dụng LinkedIn Learning trên iOS hoặc Android của bạn Một thẻ đã tồn tại với tên chi nhánh được cung cấp. Nhiều lệnh Git chấp nhận cả tên thẻ và tên nhánh, vì vậy việc tạo nhánh này có thể gây ra hành vi không mong muốn. Bạn có chắc chắn muốn tạo nhánh này không? Đúng. Chúng tôi có hơn 700 cuốn sách trong thư viện của chúng tôi. Sách bao gồm Python được liệt kê ở đây và khi bạn đã chọn một cuốn sách có liên quan, chúng tôi sẽ liên kết bạn với Amazon để đặt hàng Ví dụ này xuất phát từ mô-đun đào tạo "Cơ sở dữ liệu Python và SQL" của chúng tôi. Bạn sẽ tìm thấy mô tả về chủ đề và một số ví dụ liên quan chặt chẽ khác trên trang chỉ mục mô-đun "Cơ sở dữ liệu Python và SQL" Mô tả đầy đủ về mã nguồn Bạn có thể tìm hiểu thêm về ví dụ này trong các khóa đào tạo được liệt kê trên trang này, trên đó bạn sẽ nhận được một bộ ghi chú đào tạo đầy đủ Nhiều mô-đun đào tạo khác có sẵn để tải xuống (với mục đích sử dụng hạn chế) từ trung tâm tải xuống của chúng tôi theo Giấy phép Ghi chú Đào tạo Mở • Trung tâm giải pháp của chúng tôi cung cấp một số bài viết kỹ thuật dài hơn Đây là một chương trình mẫu, trình diễn trên lớp hoặc câu trả lời từ một khóa đào tạo. Mục đích chính của nó là cung cấp dịch vụ sau khóa học cho những khách hàng đã tham gia các khóa học công khai hoặc tại chỗ của chúng tôi, nhưng các ví dụ thường được cung cấp theo các điều kiện được mô tả bên dưới Trang web này được viết và duy trì bởi Well House Consultants Những người tham dự trước đây trong các khóa đào tạo của chúng tôi được hoan nghênh sử dụng các ví dụ riêng lẻ trong quá trình lập trình của họ, nhưng phải kiểm tra các ví dụ họ sử dụng để đảm bảo rằng chúng phù hợp với công việc của họ. Hãy nhớ rằng một số ví dụ của chúng tôi chỉ cho bạn cách không làm điều gì đó - kiểm tra ghi chú của bạn. Well House Consultants không chịu trách nhiệm về sự phù hợp của các chương trình ví dụ này với nhu cầu của khách hàng Chương trình này thuộc bản quyền của Well House Consultants Ltd. Bạn bị cấm sử dụng nó để chạy các khóa đào tạo của riêng bạn mà không có sự cho phép trước bằng văn bản của chúng tôi. Xem trang của chúng tôi về cung cấp phần mềm khóa học để biết thêm chi tiết Bất kỳ hình ảnh nào của chúng tôi trong mã này KHÔNG được sử dụng lại trên một URL công khai mà không có sự cho phép trước của chúng tôi. Đối với mục đích sử dụng cá nhân Bona Fide, chúng tôi sẽ thường cấp quyền cho bạn với điều kiện bạn cung cấp liên kết quay lại. Việc sử dụng thương mại trên một trang web sẽ phải trả phí giấy phép cho mỗi hình ảnh được sử dụng - chi tiết theo yêu cầu Bài viết này trình bày cách sử dụng truy vấn Python được tham số hóa hoặc Câu lệnh đã chuẩn bị để thực hiện các thao tác cơ sở dữ liệu MySQL Chúng tôi sử dụng truy vấn được tham số hóa để sử dụng biến Python trong truy vấn SQL. Ví dụ. –
Đọc thêm
Đối với bài viết này, chúng tôi sẽ sử dụng bảng Nhân viên có trong máy chủ MySQL của tôi. Xem chi tiết cột của nó bảng nhân viênMục lụcTruy vấn được tham số hóa là gìTruy vấn được tham số hóa là truy vấn trong đó các phần giữ chỗ (_______0_______0) được sử dụng cho các tham số (giá trị cột) và các giá trị tham số được cung cấp tại thời điểm thực hiện Hãy xem ví dụ về truy vấn được tham số hóa
Như bạn có thể thấy, chúng tôi đang sử dụng một trình giữ chỗ ( 0) cho cột lương và id. Chúng tôi cần cung cấp các giá trị trong trình giữ chỗ ( 0) trước khi thực hiện truy vấn. Truyền các biến Python vào vị trí của trình giữ chỗ khi chúng tôi thực hiện truy vấnChúng ta cần truyền hai đối số sau cho hàm 3 để chạy truy vấn được tham số hóa
Sử dụng Truy vấn được tham số hóa và Tuyên bố đã chuẩn bịCó 4 lý do chính để sử dụng. Có bốn lý do chính để sử dụng Có bốn lý do chính để sử dụng
Ghi chú. Chúng tôi đang sử dụng MySQL Connector Python để thực hiện một truy vấn được tham số hóa Cách sử dụng Truy vấn được tham số hóa trong PythonTạo đối tượng câu lệnh Đã chuẩn bị bằng cách sử dụng 4Nó tạo một con trỏ cụ thể trên đó các câu lệnh được chuẩn bị và trả về một thể hiện của lớp 5________số 8_______Ví dụ để chèn dữ liệu vào bảng MySQL bằng Truy vấn được tham số hóaĐôi khi bạn cần chèn một biến Python làm giá trị cột trong truy vấn chèn. Ví dụ: người dùng đã điền vào biểu mẫu trực tuyến và nhấp vào gửi. Vì vậy, bạn cần chèn các giá trị đó vào bảng MySQL Trước tiên, bạn cần nhập dữ liệu đầu vào của người dùng vào một biến và chuyển biến đó vào truy vấn INSERT dưới dạng trình giữ chỗ ( 0). Tất cả các giá trị là động, tôi. e. , tùy thuộc vào đầu vào của người dùngHãy xem cách sử dụng truy vấn được tham số hóa để chèn dữ liệu vào cơ sở dữ liệu MySQL bằng Python
đầu ra Data inserted successfully into employee table using the prepared statement MySQL connection is closed Tham khảo tìm nạp các hàng từ bảng MySQL trong Python bằng cách sử dụng Truy vấn được tham số hóa Hiểu chương trình Truy vấn được tham số hóa Python MySQL
Ghi chú. Bạn cũng có thể tạo câu lệnh đã chuẩn bị sẵn bằng cách chuyển rõ ràng lớp MySQLCursorPrepared làm đối số trong khi tạo con trỏ.
Sử dụng Truy vấn được tham số hóa Cập nhật dữ liệu của bảng MySQLHãy xem cách cập nhật bảng MySQL bằng Python. Trong ví dụ này, chúng tôi đang cập nhật mức lương của một nhân viên bằng truy vấn được tham số hóa
đầu ra Employee table updated using the prepared statement MySQL connection is closed Sử dụng truy vấn được tham số hóa và câu lệnh đã chuẩn bị để xóa dữ liệu khỏi bảng MySQLBây giờ, hãy xem cách sử dụng câu lệnh đã chuẩn bị và truy vấn được tham số hóa để xóa dữ liệu của bảng MySQL khỏi Python Ví dụ: khi người dùng xóa dữ liệu của họ khỏi cổng web. Trong trường hợp như vậy, chúng ta cần sử dụng các biến đó bên trong truy vấn được tham số hóa bằng cách sử dụng trình giữ chỗ ( 0)
đầu ra Record Deleted successfully using Parameterized query MySQL connection is closed Hoạt động của một truy vấn được tham số hóaLần đầu tiên bạn chuyển một câu lệnh truy vấn SQL tới phương thức exec() của con trỏ, nó sẽ tạo ra câu lệnh đã chuẩn bị Đối với các yêu cầu thực thi tiếp theo, giai đoạn chuẩn bị sẽ bị bỏ qua nếu câu lệnh SQL giống nhau, tôi. e. , truy vấn không được biên dịch lại
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 Cơ sở dữ liệu Python để Thực hành và thành thạo các thao tác Cơ sở dữ liệu Python Câu lệnh chuẩn bị sẵn trong MySQL là gì?Câu lệnh chuẩn bị là một tính năng được sử dụng để thực thi lặp đi lặp lại các câu lệnh SQL giống nhau (hoặc tương tự) với hiệu quả cao . Các báo cáo đã chuẩn bị về cơ bản hoạt động như thế này. Chuẩn bị. Mẫu câu lệnh SQL được tạo và gửi đến cơ sở dữ liệu. Một số giá trị không được chỉ định, được gọi là tham số (được gắn nhãn "?").
MySQL có hỗ trợ các câu lệnh đã chuẩn bị không?MySQL 8. 0 cung cấp hỗ trợ cho câu lệnh chuẩn bị phía máy chủ . Hỗ trợ này tận dụng giao thức nhị phân máy khách/máy chủ hiệu quả. Sử dụng các câu lệnh đã chuẩn bị với các trình giữ chỗ cho các giá trị tham số có các lợi ích sau. Ít chi phí hơn để phân tích câu lệnh mỗi khi nó được thực thi.
Làm cách nào để chuyển truy vấn tới MySQL bằng 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 Chuẩn bị câu lệnh SQL là gì?Báo cáo đã chuẩn bị là gì? . Lệnh SQL được thực thi an toàn, ngăn ngừa lỗ hổng SQL Injection. a parameterized and reusable SQL query which forces the developer to write the SQL command and the user-provided data separately. The SQL command is executed safely, preventing SQL Injection vulnerabilities. |