create or replace PROCEDURE hello_world
IS
DECLARE
message varchar2(20) := 'Hello, World!';
BEGIN
dbms_output.put_line(message);
END;
/
我在声明变量消息时遇到错误(消息和varchar2之间的红色下划线)。
当我运行程序时,它说:
PROCEDURE HELLO_WORLD编译 错误:检查编译器日志
当我执行它时。然后它显示了这个:
在命令行中从第10行开始出错 -
执行hello_world
错误报告 -
ORA-06550:第1行第7栏:
PLS-00905:对象HR.HELLO_WORLD无效
ORA-06550:第1行第7栏:
PL / SQL:语句被忽略
06550. 00000 - “行%s,列%s:\ n%s”
*原因:通常是PL / SQL编译错误 *操作:
注意:我正在使用Oracle SQL Developer来完成所有这些工作。
答案 0 :(得分:1)
要在CREATE
语句后查看编译器错误,请运行show error
。
在你的情况下,它是DECLARE
。在存储过程中不需要这样做。
以下内容应该有效:
create or replace PROCEDURE hello_world
IS
message varchar2(20) := 'Hello, World!';
BEGIN
dbms_output.put_line(message);
END;
/