Page 1 of 1

collect and Direct mode

Posted: Thu 18 Jun 2015 05:53
by sinys
Hello,

XE2, ODAC 9.5

Example:

Code: Select all

  OraSession1.ConnectString := 'scott/tiger@orcl12';
  OraSession1.Connect;
  OraQuery1.SQL.Text := 'select collect(level) from dual connect by level <= 10';
  OraQuery1.Open;
it's work fine with oracle client.
But in direct mode I get error

Code: Select all

  OraSession1.ConnectString := 'scott/[email protected]:1522:sn=orcl12';
  OraSession1.Options.Direct := True;
  OraSession1.Connect;
  OraQuery1.SQL.Text := 'select collect(level) from dual connect by level <= 10';
  OraQuery1.Open; // raise error
NET: ORA-01948: identifier's name length (31) exceeds maximum (30)
ORA-06512: at "SYS.DBMS_PICKLER", line 20
ORA-06512: at "SYS.DBMS_PICKLER", line 89
ORA-06512: at line 1

Re: collect and Direct mode

Posted: Thu 18 Jun 2015 06:35
by AlexP
Hello,

Thank you for the sample. We have reproduced the problem and will try to fix it as soon as possible.

Re: collect and Direct mode

Posted: Mon 13 Jul 2015 12:48
by AlexP
We have fixed the ORA-01948 error: identifier's name length (31) exceeds maximum (30), however the "collect ()" type will not be supported in the direct mode. We will try to support this type in future versions.