Reputation: 1518
I have a call:
BackFill = "EXEC SYSDBA.BACKFILL('64907RM9')";
_context.Database.ExecuteSqlRaw(BackFill);
I have tried the statement in Oracle SQL Developer, and it works. However, when I try to run it via ExecuteSqlRaw(), Oracle complains throws an ORA-00900 invalid SQL statement
What did I do wrong? Thanks!
UPDATE:
I change the SQL statement to below:
begin SYSDBA.BACKFILL('64907RM9'); end;
Now, I am getting identifier SYSDBA.BACKFILL must be declared...but it is.
Upvotes: 0
Views: 502
Reputation: 142720
It means that user SYSDBA doesn't own BACKFILL procedure. If you, by any chance, created it using double quotes and lower/mixed case, you'll have to do that again (i.e. reference it with double quotes and match letter case).
Otherwise, if you're running it connected as another user (not SYSDBA), make sure SYSDBA granted you EXECUTE privilege on it.
Upvotes: 1