gpt4 book ai didi

sql - 选择存储过程 plsql

转载 作者:搜寻专家 更新时间:2023-10-30 19:56:40 25 4
gpt4 key购买 nike

我对 Oracle 中的存储过程语法有点困惑。

我从一个简单的开始:

select * from test_table;

它起作用了,然后我把它放在一个过程中:

CREATE OR REPLACE PROCEDURE example
IS
BEGIN
select * from test_table;
END;

不起作用。预期的“INTO”是我收到的错误消息。现在,我已经看到了 SQL Server 代码的语法示例,它只是将一个 select 语句插入一个 proc 并且它立即起作用,但这里似乎不是这种情况。

最佳答案

T-SQL 和 PL/SQL 是完全不同的语言。特别是,对于 PL/SQL,您必须将结果选择到某个变量或游标中。根据您计划对记录数据执行的操作 - 过程中的处理 - 或返回给调用者,将驱动您必须执行的操作。

在你的例子中,如果你想返回记录集,你会做这样的事情:

CREATE OR REPLACE PROCEDURE example (
p_recordset OUT SYS_REFCURSOR) AS
BEGIN
OPEN p_recordset FOR
select * from test_table;
END example ;

参见 this link例如。

关于sql - 选择存储过程 plsql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28279134/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com