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
************