no i want to bulk collect into as many as 150 different pl/sql tables at once. depends on the table. So I would need to dynamiclly generate 1 dimensional arrays at run time
based on VARCHAR,Date, or Number fields.
Instead of doing
delcare
table_object pl/sqltable
begin
use table_object
end;
i want to generate them at run time.
since in 8i you cannot use bulk binds with pl/sql tables based on records.
>
> From: "Quintin, Richard" <[Email Address Removed] Date: 2003/05/30 Fri PM 02:31:21 EDT
> To: <[Email Address Removed]
> "LazyDBA.com Discussion" <[Email Address Removed] Subject: RE: RE: how does oracle manage unique constraints?
>
> So you want to have a multi-dimensional array? Can't do it (until 9i). You might look into using an external procedure in C or Java. I've never had to use one, so I don't know much about them. Perhaps someone else has an idea?
>
> -----Original Message-----
> From: [Email Address Removed] [mailto:[Email Address Removed] Sent: Friday, May 30, 2003 2:16 PM
> To: Quintin, Richard; LazyDBA.com Discussion
> Subject: RE: RE: how does oracle manage unique constraints?
>
>
> Thanks, but I know how to use bulk binds with dynamic sql. Its trivial. I may have missed this, but I read the doc pretty carefully...
>
> These are not one column inserts or updates. Im going to haev up to 150 columns and 75 tables each of which is unique.
>
> So I would some way to dynamically generate pl/sql table objects at run time. I know how to make a generator package. Its simple, but not sure how to use it. This is what I would do.
>
> Its pseudocode
>
> CREATE OR REPLACE PROCEDURE GENERATOR(p_flag IN VARCHAR2,
> p_vartable OUT PL/SQL TABLE TYPE NO COPY) -- i would have one of these for each data type.
>
> is
>
>
> begin
>
> if p_flag = 'VARCHAR2
> p_variable := pl/sql table of VARCHAR2 type)
> end if;
>
> end;
>
> problem is how do I handle that generation back in my main package. Ill need 1 table for each column. This is trivial in C++ and Java. Or am I looking in the wrong place? I dont think its possible to use dynamic arrays in pl/sql
>
>
Oracle LazyDBA home page