On Wed, 21 Aug 2002 13:16:14 +0200 PHleX <[EMAIL PROTECTED]> wrote: > > "Michael A Chase" <[EMAIL PROTECTED]> wrote in message > Mahogany-0.64.2-3260-20020726-082723.00@MCHASE-COMPAQ">news:Mahogany-0.64.2-3260-20020726-082723.00@MCHASE-COMPAQ... > > On Fri, 26 Jul 2002 11:16:00 +0530 "Sundarraj, Senthil Kumar > (Cognizant)" > <[EMAIL PROTECTED]> wrote: > > > - A pseudo-code example in dbi-users mailing list, dated 1997 as well (Geez > ! Was that the only year when people needed to get Oracle array from perl > DBI or did I miss stg, and a valuable solution was found since that time?)
No, trying to get arrays or objects out of Oracle or other databases with DBI comes up almost monthly. > : kind of "Very easy to do, but I've never done it..." idea :-/ to make > PL/SQL pick the element you need instead of picking up the whole table and > then work on it from perl > (http://www.bitmechanic.com/mail-archives/dbi-users/Feb1997/0048.html). This > doesn't meet my needs since I have to get the whole table in a single call > to my stored function. How about spliting the string up into the desired components in Perl? Perl is much better at string and array handling than PL/SQL anyway. That's not a general solution, but since you mentioned that the information is in a string to begin with, that might solve your immediate problem. > > Handling non-scalar arguments is on the TODO list for DBD::Oracle, but it > > isn't fully ready yet. You might be able to do it with Oracle::OCI, but I > > haven't used it and can't tell you how. > > > > Another approach would be to use an adapter package that can convert scalar > > lists to arrays and back. If the arrays are small enough, an anonymous > > block might work. > > I don't have enouch time to do this, and if I picture it right, this should > be the idea in the post archived at bitmechanic.com. > But as you (Michael) was the one that posted the DBMS_OUTPUT solution, and > as I couldn't get any info about the func() method on perldoc.com, can you > tell me wether the func() method would help me in any way to do what I need, > and where I could get more documentation about it ? The func() method isn't a general purpose database interface, it is a means for DBD drivers to expose specific activities. Run (perldoc DBI and perldoc DBD::Oracle) to read about func() and the specific private functions provided by DBD::Oracle. -- Mac :}) ** I normally forward private questions to the appropriate mail list. ** Ask Smarter: http://www.tuxedo.org/~esr/faqs/smart-questions.html Give a hobbit a fish and he eats fish for a day. Give a hobbit a ring and he eats fish for an age.
