Functions và Procedures trong MariaDB

Tiếp theo phần tìm hiểu về MariaDB thì Team Việt Dev sẽ giải thích cách sử dụng Functions và Procedures trong MariaDB với cú pháp và ví dụ minh họa trực quan sao cho dễ hiểu nhất.

Phần sau tổng hợp các câu lệnh truy vấn cơ bản trong MariaDB như lệnh mệnh đề DISTINCT, mệnh đề LIKE, mệnh đề ORDER BY, mệnh đề GROUP BY và mệnh đề ALIASES.

Functions và Procedures trong MariaDB

1. Functions trong MariaDB

Trong MariaDB thì Functions là một chương trình được lưu trữ mà bạn có thể chuyển các tham số vào và sau đó trả về một giá trị.

Cú pháp để tạo Functions trong MariaDB là:

CREATE 
[ DEFINER = { CURRENT_USER | user_name } ] 
FUNCTION function_name [ (parameter datatype [, parameter datatype]) ]
RETURNS return_datatype [ LANGUAGE SQL
                        | DETERMINISTIC
                        | NOT DETERMINISTIC
                        | { CONTAINS SQL 
                          | NO SQL
                          | READS SQL DATA
                          | MODIFIES SQL DATA }
                        | SQL SECURITY { DEFINER | INVOKER }
                        | COMMENT 'comment_value'

BEGIN

   declaration_section

   executable_section

END;

Ví dụ tạo Functions trong MariaDB:

DELIMITER //

CREATE FUNCTION CalcValue ( starting_value INT )
RETURNS INT DETERMINISTIC

BEGIN

   DECLARE total_value INT;

   SET total_value = 0;

   label1: WHILE total_value <= 3000 DO
     SET total_value = total_value + starting_value;
   END WHILE label1;

   RETURN total_value;

END; //

DELIMITER ;

2. Functions trong MariaDB

Trong MariaDB thì Functions là một chương trình được lưu trữ mà bạn có thể chuyển các tham số vào.

Cú pháp để tạo Functions trong MariaDB là:

CREATE 
[ DEFINER = { CURRENT_USER | user_name } ] 
PROCEDURE procedure_name [ (parameter datatype [, parameter datatype]) ]

[ LANGUAGE SQL
| DETERMINISTIC
| NOT DETERMINISTIC
| { CONTAINS SQL 
  | NO SQL
  | READS SQL DATA
  | MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
| COMMENT 'comment_value'

BEGIN

   declaration_section

   executable_section

END;

Ví dụ tạo Functions trong MariaDB:

DELIMITER //

CREATE procedure CalcValue ( OUT ending_value INT )
DETERMINISTIC

BEGIN

   DECLARE total_value INT;

   SET total_value = 50;

   label1: WHILE total_value <= 3000 DO
     SET total_value = total_value * 2;
   END WHILE label1;

   SET ending_value = total_value;

END; //

DELIMITER ;

3. Khởi chạy Functions và Procedures trong MariaDB

Để khởi chạy Functions và Procedures trong MariaDB như sau:

CALL CalcValue (@variable_name);

SELECT @variable_name;

Lời kết: Trong thời gian tới Team Việt Dev sẽ tiếp tục chia sẻ thêm nhiều bài viết về chuyên mục MariaDB miễn phí đến bạn đọc, các bạn nhớ theo dõi kênh để có được những chia sẻ mới nhất.

(Tác giả: Team Việt Dev)

Bình luận