首页 > 数据库 >Oralce中,在SqlPlus执行PL/SQL,begin...end 或者 .sql文件

Oralce中,在SqlPlus执行PL/SQL,begin...end 或者 .sql文件

时间:2022-09-21 10:03:37浏览次数:62  
标签:... Oralce code end begin sql test

执行begin...end(结尾记得加上 '/')

begin
  dbms_output.put_line('Hello World');
end;
/

务必在结尾加上 '/' 否则无法执行,命令行会处于阻塞等待状态

执行.sql文件

@D:/test.sql;

test.sql (无输入输出参数的存储过程)

exec test_stored_procedure;

test.sql (有输入参数的存储过程)

exec test_stored_procedure('a','b');

test.sql (有输入输出参数的存储过程,由于存在输出参数,则需要改写成declare...begin...end)

declare p_error_code varchar(10);
begin
  test_stored_procedure('a','b', p_error_code);
  dbms_output.put_line(p_error_code);
end;
/

如果在 .sql文件 中使用begin...end,同样务必在结尾加上 '/'

如果想看到输出信息,需要在执行 PL/SQL 前加入如下代码

set serveroutput on;

例如:

set serveroutput on;
begin
  dbms_output.put_line('Hello World');
end;
/

总结

由于很多人平常都是使用数据库开发工具进行开发,而这些开发工具可能会自动优化一些小细节
这容易导致我们忽略命令行的正确用法,所以需要注意命令行与开发工具在使用上的区别
这种小细节的问题通过搜索引擎往往不容易检索到,有时就是小细节导致开发进度卡住

标签:...,Oralce,code,end,begin,sql,test
From: https://www.cnblogs.com/zhuang229/p/16714573.html

相关文章