【发布时间】:2021-03-01 18:38:37
【问题描述】:
我只想在声明过程之间显示 USU_USERS 表,但是当我尝试编译时显示此错误
DECLARE
ID_UNICO VARCHAR(200) := 'H3LP';
BEGIN
DECLARE
VID VARCHAR2(200);
VID_USER VARCHAR2(200);
BEGIN
VID := ID_UNICO;
VID_USER := 'SOPORTE';
USR_SP_USERS.CREATE(
VID => VID,
VID_USER => VID_USER,
);
END;
SELECT * from USU_USERS;
END;
注意:此表不止一行。
【问题讨论】:
-
根据 PL/SQL 的工作方式,没有地方可以输出。如果您想在控制台上输出并且您将其作为“脚本”执行,则删除
BEGIN和END;。 -
对不起,我更新了帖子。我需要在输出中显示 DECLARE 过程中的表
-
这三个查询保证产生 (C) 0 或更多行
-
“这是一个例子”——不幸的是,这是一个非常糟糕的例子。您的示例应该表明需要在 PL/SQL 中执行“某些操作”,例如复杂的处理等。无论如何,几乎可以肯定您需要在 PL/SQL 块之外执行一条 SQL 语句(因此, ,该块不会是匿名的)。最常见的方法是创建一个表函数(一个返回某种表的函数);然后,在标准 SQL 语句中,您选择“从那个函数”(实际上,从它的表输出中)。你的问题,正如所问的那样,毫无意义。
标签: oracle plsql oracle-sqldeveloper