[INTERFACES] ecpg: why use PREPARE? - Mailing list pgsql-interfaces

From UEBAYASHI 'UMA' Masao
Subject [INTERFACES] ecpg: why use PREPARE?
Date
Msg-id 19991202191428J.masao@nf.enveng.titech.ac.jp
Whole thread Raw
Responses Re: [INTERFACES] ecpg: why use PREPARE?  (Michael Meskes <meskes@postgresql.org>)
List pgsql-interfaces
I'm new to both PostgreSQL and ecpg (Embedded SQL), and examinig ecpg
example programs. I can see such lines like below in test2.pgc:
 | ... | /* normal version */ |   exec sql open cur; |   exec sql whenever not found do break; |   while (1) { |
execsql fetch in cur into :personal:ind_personal, :married:ind_married, :children.integer:ind_children.smallint; |
...|   } |   exec sql close cur; | ... | ... | /* prepare version */ |   exec sql prepare MM from :query; |   exec sql
declareprep cursor for MM; |   exec sql open prep using :testname; |   exec sql whenever not found do break; |   while
(1){ |     exec sql fetch in prep into :personal:ind_personal, :married:ind_married,
:children.integer:ind_children.smallint;|   ... |   } | ...
 

As far, I know the differences between the normal one and the parepare
one are that the prepare one:
 1) prepares statement `MM' and creates cursor on it. 2) opens the cursor with ``using''

I have no idea what these mean. My test program which is simply
changed from ``declare cursor'' to ``prepare + declare'' seems to run
the same way and takes the same time.

Any help will be appreciated. :)

Masao

************




pgsql-interfaces by date:

Previous
From: Tom Lane
Date:
Subject: Re: [INTERFACES] Slow join query optimisation?
Next
From: Michael Meskes
Date:
Subject: Re: [INTERFACES] ecpg: why use PREPARE?