Look back in the archives.  I asked this same question back in
January (the thread starts on Jan 24th).  In short, yes.  Fiddle
with $dbh->{RowCacheSize} to get what you want.  If you set it to
200, then when you do your first fetch you will get 200 rows from
Oracle, and the next 199 fetches will be fulfilled from local memory,
not over the network.

-- 
j.

James FitzGibbon                       voice/fax 612-761-6121/4277 
Consultant, TTS-3D@TPN4H               [EMAIL PROTECTED]


> -----Original Message-----
> From: Schoenenberger Peter [mailto:[EMAIL PROTECTED]]
> Sent: Tuesday, March 12, 2002 10:02 AM
> To: '[EMAIL PROTECTED]'
> Subject: Host Arrays
> 
> 
> Hello everyone
> 
> Is there a way to use the "host array" interface of oracle 8i 
> in perl dbi?
> 
> With arrays, you manipulate an entire array with a single SQL 
> statement.
> Thus, Oracle communication overhead is reduced markedly, 
> especially in a
> networked environment. A major portion of runtime is spent on network
> roundtrips between the client program and the server 
> database. Arrays reduce
> the roundtrips. 
> For example, suppose you want to insert information about 300 
> employees into
> the EMP table. Without arrays your program must do 300 individual
> INSERTs--one for each employee. With arrays, only one INSERT 
> needs to be
> done. Or you want to select many records from the database.
> 
> For example: With embedded SQL in C you can do the following:
> -------------------------------------------------------------
> char   emp_name[1000]; 
> int    emp_number[1000]; 
> float  salary[1000]; 
>  
> EXEC SQL SELECT ENAME, EMPNO, SAL 
>     INTO :emp_name, :emp_number, :salary 
>     FROM EMP 
>     WHERE SAL > 2000; 
> --------------------------------------------------------------
> All data (maximum 1000) will come in one stream over the 
> network to your
> client.
> 
> I have tried the select with the "fetchall_arrayref" in perl, 
> but behind the
> scenery multiple fetches are produced and there is no reduce 
> of roundtrips
> between the client and the database.
> 
> Thanks,
> Peter
> 

Reply via email to