Bài 5: Gọi Procedure Trong MySQL Trên Python
Có thể bạn quan tâm
Bài trước mình đã giới thiệu với mọi người thao tác đầy đủ CRUD trên MySQL qua Python rồi, tiếp tục bài này mình sẽ hướng dẫn mọi người cách gọi procedure trong MySQL bằng Python.
Để gọi được procedure thì trong database của bạn cần có procedure trước đã, ở đây mình sẽ tạo ra một procedure có tên là get_all_user để lấy ra tất cả users có trong table users.
DELIMITER $$ CREATE DEFINER=`root`@`localhost` PROCEDURE `get_all_user` () NO SQL SELECT * FROM users$$ DELIMITER ;Tiếp đó để gọi được procedure thì mọi người có thể sử dụng một trong hai cách sau:
1, Sử dụng phương thức execute().
Đối với cách này thì mọi ngừời vẫn thực hiện như bình thường đó là truyền cú pháp gọi procedure vào trong phương thức execute().
VD:
import pymysql connection = pymysql.connect('localhost', 'root', '', 'pymysql') try: with connection.cursor() as cursor: sql = "CALL get_all_user()" result_count = cursor.execute(sql) print('Data Count: ' + str(result_count)) print(cursor.fetchall()) finally: connection.close()Kết quả trả về:
Data Count: 3 ( (5, '[email protected]', '123456'), (6, '[email protected]', '123456'), (7, '[email protected]', '123456') )2, Sử dụng phương thức callproc().
Bạn cũng có thể call procedure qua phương thức callproc() với cú pháp như sau:
cursor.callproc(proc_name, args)Trong đó:
- proc_name là tên của procedure mà bạn muốn gọi.
- args là một sequence chứa tham số truyền vào procedure.
VD: Mình sẽ gọi procedure get_all_user qua phương thức callproc().
import pymysql connection = pymysql.connect('localhost', 'root', '', 'pymysql') try: with connection.cursor() as cursor: cursor.callproc('get_all_user') print(cursor.fetchall()) finally: connection.close()Kết quả trả về:
( (5, '[email protected]', '123456'), (6, '[email protected]', '123456'), (7, '[email protected]', '123456') )Từ khóa » Gọi Procedure Trong Mysql
-
TÌM HIỂU VỀ STORED PROCEDURE TRONG MYSQL - Viblo
-
Mysql Stored Procedure - Viblo
-
Stored Procedure Trong MySQL - STDIO
-
Tạo MySQL Stored Procedure đầu Tiên
-
Truyền Tham Số Vào Mysql Stored Procedure
-
Hướng Dẫn Cơ Bản Về Stored Procedure Trong MySQL | Gextend
-
[Bài đọc] Tạo Store Procedure Trong MySql Với Tham Số - Học PHP
-
Bài 1 - Giới Thiệu Và Tạo Mysql Stored Procedure - Nongdanit
-
Stdio, Tìm Hiểu Về Stored Procedure Trong Mysql
-
[Thực Hành] Store Procedure
-
Mysql Stored Procedure Là Gì? - Minh Quan Doan
-
Giới Thiệu Về Stored Procedure Trong MySQL (P.4) Parameters Trong ...
-
Bài 2 - Biến Và Tham Số Trong Mysql Stored Procedure - Nongdanit
-
MySQL Procedure Là Gì?