Computer >> Máy Tính >  >> Lập trình >> MySQL

Thủ tục lưu trữ MySQL:tham số ra?

Đây là một thủ tục được lưu trữ lấy một tham số cho đầu vào (IN) và tham số thứ hai cho đầu ra (OUT)

mysql> delimiter //
mysql> create procedure Sp_SQRT(IN Number1 INT, OUT Number2 FLOAT)
   -> Begin
   -> set Number2=sqrt(Number1);
   -> end;
   -> //
Query OK, 0 rows affected (0.24 sec)
mysql> delimiter ;

Gọi thủ tục đã lưu trữ và gửi giá trị đến biến người dùng. Cú pháp như sau

CALL yourStoredProcedureName(anyIntegerValue,@anyVariableName);

Kiểm tra giá trị nào được lưu trữ trong biến @anyVariableName. Cú pháp như sau

SELECT @anyVariableName;

Đã tạo thủ tục được lưu trữ với tên ‘Sp_SQRT’. Truy vấn như sau để gọi thủ tục đã lưu trữ

mysql> call Sp_SQRT(36,@MySquareRootNumber);
Query OK, 0 rows affected (0.02 sec)

Kiểm tra giá trị của biến @MySquareRootNumber bằng câu lệnh select

mysql> select @MySquareRootNumber;

Sau đây là kết quả

+---------------------+
| @MySquareRootNumber |
+---------------------+
|                   6 |
+---------------------+
1 row in set (0.00 sec)