Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: insert into table , where the table name is a parameter

Re: insert into table , where the table name is a parameter

From: C Chang <cschang_at_maxinter.net>
Date: Sun, 23 Jun 2002 00:16:56 -0400
Message-ID: <3D154BB8.5393@maxinter.net>


Michael Kuznetsov wrote:
>
> Hi
>
> You can use dbms_sql package to create sql satement at runtime. It
> looks like:
>
> CREATE OR REPLACE PROCEDURE insert_into_table(tab_name IN VARCHAR2) AS
> c INTEGER;
> rows INTEGER;
> BEGIN
> c := dbms_sql.open_cursor;
> dbms_sql.parse(c, &#8217;insert into &#8216;||tab_name||&#8217;
> values <your_values>&#8217;, dbms_sql.native);
> rows := dbms_sql.execute(c);
> dbms_sql.close_cursor(c);
> END;
>
> Regards,
> Michael
> Brainbench MVP for Oracle Programming
> http://www.brainbench.com
>
> tsachis_at_boi.gov.il (zachi) wrote in message news:<6af31984.0206062226.10454d6c_at_posting.google.com>...
> > Hi
> > I want to write a procedure that insert into table which its name is pass
> > to the procedure as a parameter
> > i.e
> > procedute temp(tab varchr2) is
> > begin
> > insert into temp values(etc...)
> > ofcourse that the tab name erresent a table which has the appropiate coloums
> > please help me
> > p.s
> > what is IN parameter

I have a similar situation needs to use the Table name as a parameter rather where strings. From your solution, I have a little problem. IF there are multiple insert and it uses the LOOP.. END LOOP to accomplish. Will it be too resource costly with you procedure?

C chang Received on Sat Jun 22 2002 - 23:16:56 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US