将 SQL 查询保存到变量
我已经编写了一个 PL/PgSQL 触发器,我需要将查询(实际上是结果集)保存到变量。 请参阅下文:
DECLARE
__query record;
r record;
BEGIN
__query := (SELECT * FROM posts);
FOR r IN __query LOOP
-- do something with the row data
END LOOP;
RETURN NEW;
END;
我应该使用哪种数据类型进行查询本身?
我猜 record
不是合适的数据类型,应该在循环周期本身中使用(对于 r var)。
I have written a PL/PgSQL trigger and i need to save the query (in fact the result set) to variable.
See below:
DECLARE
__query record;
r record;
BEGIN
__query := (SELECT * FROM posts);
FOR r IN __query LOOP
-- do something with the row data
END LOOP;
RETURN NEW;
END;
Which data type for query itself should i use?
I guess record
is not appropriate data type and should be used in the loop cycle itself (for r var).
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
如果您的意思是要将循环查询作为字符变量传递,那么您可以这样做:
If you mean you want to pass the query for the loop as a character variable, then you can do it like this:
oracle pl-sql 的这段代码
this code for oracle pl-sql