Does ODAC supports PL/SQL tables of binary_double?
Posted: Mon 06 Jul 2009 16:08
I have package and procedure in it:
I try to call PROCEDURE get_filter_content with ODAC StoredProc component.
The call (on ExecProc) gives to me this error:
Project Project1.exe raised exception class EOraError with message 'ORA-06550: line 2, column 73:
PLS-00418: array bind type must match PL/SQL table row type
....
If I change datatype from stark_common.t_binary_double_array to stark_common.t_number_array, the call is made without errors.
Does ODAC supports PL/SQL tables of binary_double?
Software Used:
Delphi 7.0
ODAC 6.50.0.39
Oracle Server 10.2.0.4
Oracle Client 10.2.0.4
Code: Select all
CREATE OR REPLACE PACKAGE STARK_SCH."PRED_DATA" IS
...
PROCEDURE get_filter_content(p_scname_out OUT NOCOPY stark_common.t_varchar2_array,
p_name_out OUT NOCOPY stark_common.t_varchar2_array,
p_mjdb_out OUT NOCOPY stark_common.t_number_array,
p_timesb_out OUT NOCOPY stark_common.t_binary_double_array,
p_mjde_out OUT NOCOPY stark_common.t_number_array,
p_timese_out OUT NOCOPY stark_common.t_binary_double_array,
p_mainmodel_out OUT NOCOPY stark_common.t_varchar2_array,
p_scmodel_out OUT NOCOPY stark_common.t_varchar2_array,
p_funcname_out OUT NOCOPY stark_common.t_varchar2_array,
p_reframe_out OUT NOCOPY stark_common.t_varchar2_array,
p_timescale_out OUT NOCOPY stark_common.t_varchar2_array,
p_isvsource_out OUT NOCOPY stark_common.t_varchar2_array,
p_plnformat_out OUT NOCOPY stark_common.t_varchar2_array,
p_plnfilename_out OUT NOCOPY stark_common.t_varchar2_array,
p_dmjdc_out OUT NOCOPY stark_common.t_binary_double_array,
p_deflag_out OUT NOCOPY stark_common.t_varchar2_array);
.......
And package with type declarations:
CREATE OR REPLACE PACKAGE STARK_SCH."STARK_COMMON" AS
TYPE t_varchar2_array IS TABLE OF VARCHAR2(255) INDEX BY PLS_INTEGER;
TYPE t_number_array IS TABLE OF NUMBER INDEX BY PLS_INTEGER;
TYPE t_date_array IS TABLE OF DATE INDEX BY PLS_INTEGER;
TYPE t_binary_double_array IS TABLE OF BINARY_DOUBLE INDEX BY PLS_INTEGER;
....
The call (on ExecProc) gives to me this error:
Project Project1.exe raised exception class EOraError with message 'ORA-06550: line 2, column 73:
PLS-00418: array bind type must match PL/SQL table row type
....
If I change datatype from stark_common.t_binary_double_array to stark_common.t_number_array, the call is made without errors.
Does ODAC supports PL/SQL tables of binary_double?
Software Used:
Delphi 7.0
ODAC 6.50.0.39
Oracle Server 10.2.0.4
Oracle Client 10.2.0.4