一个初学者的问题:
我在Oracle数据库中有一个存储过程(只是一个没有任何包的过程):
CREATE OR REPLACE procedure FII_DBO.CLEAR_UNIT_TEST_PRODUCT
IS
BEGIN
...
END CLEAR_UNIT_TEST_PRODUCT;
这段代码在TOAD里能正常运行。然而,当我尝试从C#中运行它时,会出现错误:
System.Data.OracleClient.OracleException: ORA-06550: line 1, column 7:
PLS-00201: identifier 'CLEAR_UNIT_TEST_PRODUCT' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored
相关的 C# 代码:
Command = new OracleCommand();
Command.CommandText = procedureName;
Command.CommandType = CommandType.StoredProcedure;
Command.Connection = connection;
Command.ExecuteNonQuery();
ExecuteReader()
。我不明白它可能是权限问题,因为我连接的用户ID是模式和特定过程的所有者。还有其他原因可能会发生这种情况吗? - one.beat.consumer