21

我正在使用 Oracle 10g 数据库并尝试使用 SQL 命令运行一个过程。

create or replace procedure "exam" is
begin
  DBMS_OUTPUT.PUT_LINE('Test');
end;

然后点击运行按钮。它显示:“程序已创建”。

当我尝试使用以下命令执行它时:

execute exam;

然后点击运行按钮,它显示:

ORA-00900: invalid SQL statement

谢谢你的帮助。

4

3 回答 3

30

刚刚注意到你问题中的一个细节。你按下run按钮。因此,您必须使用 IDE。

您不能execute在 IDE 中使用 - 它是一个sql*plus命令。虽然它可能在 Oracle SQL Developer 中工作,但我不会在那里使用它;

尝试

begin
  exam;
end;
于 2012-12-05T12:51:58.777 回答
0

去掉名称周围的双引号。它们在 Oracle 中是一种不好的做法。

于 2012-12-05T11:36:33.343 回答
0

请参阅:尝试在 C# 中使用 ODBC 调用 Oracle 包时出现语法错误

您必须在命令前加上“{”和“}”。例子:

    processListCmd.CommandType = CommandType.StoredProcedure;
    processListCmd.CommandText = "{ call rep_invnr_proclist }";
    processListCmd.ExecuteNonQuery();
于 2015-11-06T11:26:30.350 回答