I findout that ODAC got problem with using special symbols in table names.
I got table which named like "СКЛАД СІМ'Ї" (i know that it's not a good practice, but Oracle supports it).
When i use this table in TOraQuery (select * from "СКЛАД СІМ'Ї"), it's works perfectly.
But when i try to use it in PL/SQL block, like this:
Code: Select all
Session.ExecSQL( 'begin ' + #13#10 +
' select idgroup, parent, parentfield ' + #13#10 +
' into :p_idgroup, :p_parent, :p_parentfield ' + #13#10 +
' from "СКЛАД СІМ'Ї" ' + #13#10 +
' where idobject = :p_idobject; ' + #13#10 +
'end;',
[ FGroupID, FParentID, FParentField, ObjectID
]
);
Strange, but PL/SQL Developer exec it fine, so problem not in Oracle:
Code: Select all
begin
select idgroup, parent, parentfield
into :p_idgroup, :p_parent, :p_parentfield
from "СКЛАД СІМ'Ї"
where idobject = :p_idobject;
end;
P.S. Odac version 9.6.20 in direct mode, Oracle Database 10g Enterprise Edition Release 10.2.0.3.0