ORA-00900:无效的SQL语句 - 在oracle 10g中运行过程时

时间:2012-12-05 11:31:35

标签: oracle stored-procedures plsql ide procedure

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

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

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

当我尝试使用:

执行它时
execute exam;

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

ORA-00900: invalid SQL statement

感谢您的帮助。

3 个答案:

答案 0 :(得分:17)

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

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

尝试

begin
  exam;
end;

答案 1 :(得分:1)

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

答案 2 :(得分:1)

请参阅:Syntax error while trying to call an Oracle package using ODBC in C#

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

    processListCmd.CommandType = CommandType.StoredProcedure;
    processListCmd.CommandText = "{ call rep_invnr_proclist }";
    processListCmd.ExecuteNonQuery();