Oralce中,在SqlPlus执行PL/SQL,begin...end 或者 .sql文件
执行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;
/
总结
由于很多人平常都是使用数据库开发工具进行开发,而这些开发工具可能会自动优化一些小细节
这容易导致我们忽略命令行的正确用法,所以需要注意命令行与开发工具在使用上的区别