【发布时间】:2018-03-29 09:19:33
【问题描述】:
我想执行一个 .sql 文件中的 PL/SQL 过程。
我正在使用 SQL*Plus 调用我的 .sql 文件,如下所示:
@myfile.sql
这里是 myfile.sql
declare
listTotal number := 0;
nbrCommit number := 200;
begin
select count(1) into listTotal from MKTMLF.TMP_ID_CLI_SUPPR;
[... different updates here ....]
commit;
if listTotal > nbrCommit THEN
[... different updates here ....]
commit;
end if;
end;
当我将 PL/SQL 粘贴到 Oracle SQL 开发人员中时,它会告诉我“过程 PL/SQL 已完成”,但当我使用 SQL*Plus 执行此操作时,它只会显示一个数字
55
没有别的了!实际上我发现这些数字是我 file.sql 中的行数。
有什么问题?为什么在 Oracle SQL 开发人员内部和使用 SQL*Plus 都可以?
【问题讨论】:
-
键入正斜杠“/”,您的程序将运行。您已将代码放入缓冲区,但您需要告诉它运行缓冲区中的内容 - 因此是“/”。
-
@BriteSponge 太感谢你了!!!那个“/”使它工作!
标签: oracle plsql oracle-sqldeveloper sqlplus