В этом учебном пособии вы узнаете, как объявить курсор в MariaDB с синтаксисом и примерами.
Описание
Курсор - это оператор SELECT, определенный в разделе объявление вашей хранимой программы в MariaDB
Синтаксис
Синтаксис объявления курсора в MariaDB:
DECLARE cursor_name CURSOR FOR
select_statement;
select_statement;
Параметры или аргументы
- cursor_name
- Имя, которое нужно назначить курсору.
- select_statement
- Оператор SELECT, связанный с курсором.
Пример
Давайте посмотрим, как объявить курсор в MariaDB.
Например:
1 2 3 4 |
DECLARE c1 CURSOR FOR SELECT SUM(file_size) FROM pages WHERE site_name = name_in; |
Результирующий набор этого курсора представляет собой все значения site_id, где site_name соответствует переменной name_in Ниже приведена функция, которая использует этот курсор.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
DELIMITER // CREATE FUNCTION FindSize ( name_in VARCHAR(50) ) RETURNS INT READS SQL DATA BEGIN DECLARE done INT DEFAULT FALSE; DECLARE TotalSize INT DEFAULT 0; DECLARE c1 CURSOR FOR SELECT SUM(file_size) FROM pages WHERE site_name = name_in; DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE; OPEN c1; FETCH c1 INTO TotalSize; CLOSE c1; RETURN TotalSize; END; // DELIMITER ; |
Затем вы можете вызвать вашу новую функцию (которая содержит курсор) следующим образом:
1 |
SELECT FindSize ('Google.com'); |