在Oracle中创建存储过程需要一个包



下面是一些PL/SQL,旨在在Oracle中创建一个非常简单的存储过程,基于通过SQL Developer IDE生成的代码。当我运行命令时,我收到了错误。在许多在线教程中,创建存储过程的说明不需要包(在源代码中)。在Oracle中什么时候需要一个包?我怎样才能把下面的代码修改得尽可能简单呢?

源代码:

CREATE OR REPLACE PROCEDURE PROCEDURE1
IS
BEGIN
  DBMS_OUTPUT.PUT_LINE('Hello World!');
END;

错误:

空包PROCEDURE1定义(没有public成员)。

供参考:

在运行上面的代码之前,我按照下面的说明构建了一个简单的存储过程示例,并通过Enterprise Library进行连接。

http://www.codeproject.com/Articles/19581/Microsoft-Enterprise-Library-Data-Access-Block-DAA

避免错误的工作流程:

当使用SQL Developer IDE for Oracle时,在对象资源管理器中右键单击"{Database Name}> Procedures> New Procedure",在输入存储过程名称后单击OK,点击两档(Compile)按钮。

注意

绿色三角按钮用于运行编译后的过程,但在运行它之前需要先编译。

重现错误的工作流程:

当使用SQL Developer IDE for Oracle时,在对象资源管理器中右键单击"{数据库名称}>过程>新过程",并在输入存储过程名称后单击该对话框的OK,并单击绿色三角形(执行)按钮,我得到这个错误。

解决方案:

我右键单击{数据库名称},选择"打开SQL工作表",然后粘贴从上面的工作流生成的代码。然后点击绿色三角形(执行)按钮。

真是个*HIT IDE!

"I SLIT A SHEET"

"A SHEET I SLIT"

"我坐在那张裂开的纸上"

相关内容

  • 没有找到相关文章

最新更新