Oracle兼容-存储过程-WHILE


1. 语法

  1. WHILE
  2. ..
  3. LOOP
  4. ..
  5. END LOOP

2. 定义和用法

ORACLE 模式下,GreatSQL在存储过程/存储函数,支持用 WHILE .. LOOP .. END LOOP 语法实现语句块循环。

3. Oracle兼容说明

ORACLE 模式下,GreatSQL在存储过程/存储函数,可利用 WHILE .. LOOP .. END LOOP 语句实现循环结构。而在GreatSQL原生语法结构中,是采用 WHILE .. DO .. END WHILE 这种用法。

ORACLE 模式下,将不再支持原生的 WHILE .. DO .. END WHILE 语法。

4. 示例

  1. greatsql> SET sql_mode = ORACLE;
  2. greatsql> DELIMITER //
  3. CREATE OR REPLACE PROCEDURE while_loop_sp() AS
  4. v1 INT;
  5. v2 VARCHAR(255);
  6. BEGIN
  7. SET v1 = 1;
  8. SET v2 = 'GreatSQL SP WHILE LOOP ';
  9. WHILE v1 <= 5 loop
  10. SET v2 = CONCAT(v2, v1, ',');
  11. SET v1 = v1 + 1;
  12. END LOOP;
  13. SELECT v2;
  14. END; //
  15. greatsql> CALL while_loop_sp() //
  16. +-----------------------------------+
  17. | v2 |
  18. +-----------------------------------+
  19. | GreatSQL SP WHILE LOOP 1,2,3,4,5, |
  20. +-----------------------------------+
  21. 1 row in set (0.00 sec)
  22. Query OK, 0 rows affected (0.00 sec)

问题反馈

联系我们

扫码关注微信公众号

greatsql-wx