plsql游标的作用_sqlserver游标使用和循环

plsql游标的作用_sqlserver游标使用和循环Postgresql中PL/pgSQL的游标、自定义函数、存储过程的使用场景Postgresql中PL/pgSQL代码块的语法与使用-声明与赋值、IF语句、CASE语句、循环语句:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/d

Postgresql中PL/pgSQL的游标、自定义函数、存储过程的使用   场景   Postgresql中PL/pgSQL代码块的语法与使用-声明与赋值、IF语句、CASE语句、循环语句:   https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/   上面讲了基本语法,下面记录游标、自定义函数、存储过程的使用。   注:   博客:   https://blog.csdn.net/badao_liumang_qizhi   实现   1、PL/pgSQL游标   PL/pgSQL 游标允许我们封装一个查询,然后每次处理结果集中的一条记录。游标可以将大结果集拆分成许多小的记录,   避免内存溢出;另外,我们可以定义一个返回游标引用的函数,然后调用程序可以基于这个引用处理返回的结果集。   使用游标的步骤:   1. 声明游标变量;   2. 打开游标;   3. 从游标中结果;   4. 判断是否存在更多结果。如果存在,执行第 3 步;否则,执行第 5 步;   5. 关闭游标。   示例代码:   DO $$   DECLARE    rec_user RECORD;    cur_user CURSOR(user_name VARCHAR) FOR    SELECT id, name    FROM b_user    WHERE name = user_name;   BEGIN    — 打开游标    OPEN cur_user(‘222’);        LOOP    — 游标中的记录    FETCH cur_user INTO rec_user;    — 没有找到更多数据时退出循环    EXIT WHEN NOT FOUND;    RAISE NOTICE ‘%,% ‘ , rec_user.id, rec_user.name;    END LOOP;        — Close the cursor    CLOSE cur_user;   END $$;   示例代码运行结果   
plsql游标的作用_sqlserver游标使用和循环   
plsql游标的作用_sqlserver游标使用和循环   首先,声明了一个游标 cur_user,并且绑定了一个查询语句,通过一个参数user_name 指定姓名的用户;   然后使用 OPEN 打开游标;接着在循环中使用 FETCH 语句游标中的记录,如果没有找到更多数据退出循环语句;   变量 rec_user 用于存储游标中的记录;最后使用 CLOSE语句关闭游标,释放资源。   2、创建自定义PL/pgSQL函数   要创建一个自定义的 PL/pgSQL 函数,可以使用 CREATE FUNCTION 语句。   CREATE 表示创建函数,OR REPLACE 表示替换函数定义;   name 是函数名;括号内是参数,多个参数使用逗号分隔;argmode 可以是 IN(输入)、OUT(输出)、INOUT(输入输出)   或者 VARIADIC(数量可变),默认为 IN;argname 是参数名称;argtype 是参数的类型;default_expr是参数的默认值;   rettype 是返回数据的类型;AS 后面是函数的定义,和上文中的匿名块相同;最后,LANGUAGE 指定函数实现的语言。   创建一个示例函数,用于返回指定姓名的用户数量   CREATE    OR REPLACE FUNCTION get_user_count (user_name VARCHAR ) RETURNS INTEGER AS $$ DECLARE    ln_count INTEGER;   BEGIN    SELECT COUNT     (*) INTO ln_count    FROM     b_user    WHERE     name = user_name;    RETURN ln_count;       END; $$ LANGUAGE plpgsql;   函数调用方式   SELECT name,get_user_count(name)   FROM b_user ;   调用结果   
plsql游标的作用_sqlserver游标使用和循环       
plsql游标的作用_sqlserver游标使用和循环   3、创建存储过程   存储过程,使用 CREATE PROCEDURE 语句创建   存储过程的定义和函数主要的区别在于没有返回值,其他内容都类似。以下示例创建了一个存储过程用于修改用户的信息   CREATE    OR REPLACE PROCEDURE update_user (user_id in integer,user_name IN VARCHAR) AS $$ BEGIN     UPDATE b_user     SET name = user_name    WHERE     id = user_id;       END; $$ LANGUAGE plpgsql;   存储过程调用方法:   call update_user(1,’badao’);

2024最新激活全家桶教程,稳定运行到2099年,请移步至置顶文章:https://sigusoft.com/99576.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。 文章由激活谷谷主-小谷整理,转载请注明出处:https://sigusoft.com/67123.html

(0)
上一篇 2024年 8月 8日
下一篇 2024年 8月 8日

相关推荐

关注微信