Received: from mail.kdt.de (mail.kdt.de [195.8.224.4]) by mail.postgresql.org (8.11.1/8.11.1) with ESMTP id eAABdcs16050; Fri, 10 Nov 2000 06:39:38 -0500 (EST) (envelope-from christof.petig@wtal.de) Received: from gateway.petig-baender.de (line0809.kdt.de [195.8.252.9]) by mail.kdt.de (8.8.8/8.8.8) with ESMTP id MAA28885; Fri, 10 Nov 2000 12:37:10 +0100 Received: from wtal.de (christof@puck.petig.de [192.168.234.11]) by gateway.petig-baender.de (8.8.8/8.8.8) with ESMTP id LAA10600; Fri, 10 Nov 2000 11:52:50 +0100 Message-ID: <3A0BD380.4B5F37E@wtal.de> Date: Fri, 10 Nov 2000 11:52:48 +0100 From: Christof Petig Organization: Adolf Petig GmbH & Co. KG X-Mailer: Mozilla 4.6 [en] (X11; I; Linux 2.4.0-test10 ppc) X-Accept-Language: de-DE, de, en MIME-Version: 1.0 To: Maurizio CC: Michael Meskes , pgsql-hackers@postgresql.org Subject: Re: Re: [INTERFACES] USE OF CURSORS IN ECPG References: <001101c048db$38a74d60$7394fea9@maurizio> <20001108123942.A7369@feivel.fam-meskes.de> <004301c04a53$f98ecc00$7394fea9@maurizio> Content-Type: multipart/mixed; boundary="------------58832E667D64E1B6F879BCD4" X-Archive-Number: 200011/431 X-Sequence-Number: 515 This is a multi-part message in MIME format. --------------58832E667D64E1B6F879BCD4 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Maurizio wrote: > But, how can I do ? > I have to recall the same routine many times. I tried to prepare and declare > the cursor inside the routine but when I compile with ecpg I receive the > error Cursor already defined. you should drop the cursor (exec sql close name;) But there is trouble ahead (believe me - see below) > Maurizioan ------------ (Oh, I misunderstood, if you get into trouble with transactions (waiting for you ;-() you might consider the following lines) ------------ You certainly should disable autocommit! exec sql set autocommit to off; otherwise you have no control over when a transaction starts and whether this succeded. Then at the start of your SubProgram do bool my_transaction; exec sql begin work; my_transaction=!sqlca.sqlcode; at the end: if (my_transaction) exec sql commit work; This should give you an idea on how to accomplish it. If not feel free to ask me. But (sigh) you need my NOTICE to sqlca patch applied. It's not in 7.0 but in 7.1! I don't know any other way (I'll attach the patch) Christof PS: You might consider applying the patch for (update where not_found) -> 100 and the cache which doubles ecpg's speed. --------------58832E667D64E1B6F879BCD4 Content-Type: application/x-gzip; name="Pgsql_Ecpg_Notice.diff.gz" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="Pgsql_Ecpg_Notice.diff.gz" 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 --------------58832E667D64E1B6F879BCD4 Content-Type: application/x-gzip; name="Pgsql_Ecpg_Notice2.diff.gz" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="Pgsql_Ecpg_Notice2.diff.gz" H4sIAOYn2jkCA52RX0+DMBTFn+FTHHlYYAVXWJzKXjDLNEYDRDF7JEvXKclo l9K96OZntzD/PkwTkya9t/ec+7ttgyAAk0Jwpo/ZqzXjC9zzNSKKkMaUxsOR iSm1CSFfOqvYcGRMA0NTjYdncRTuZUmCIDyh/ilIu50jSWxYluJ6o8TYhLs2 HfSRZsX1ZBoDOVdLqepcKj1fTVay4THWXQKn70BIjaXciAX6AzuwqiXco0Yr weq1W/OmmT9y3zncw/GjkQeb/MK85Jo9HWaSjvlPKLZb/OH8ge+cXvtEvR6M z6wPG4lGvvM5mdOpXqzpJL8yhxXjuZLPRilVqeZVw922Uu5vXD6kN2k2S8s8 uysubn28t/TG3//mDfrgrqEKAgAA --------------58832E667D64E1B6F879BCD4 Content-Type: application/x-gzip; name="Pgsql_Ecpg_Update_100.diff.gz" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="Pgsql_Ecpg_Update_100.diff.gz" H4sIAI3cwTkCA5WQb2+CMBDGX+unuJFoIIAUM93GsgUz0SwhwABfbYvBUk0j AmtLshd++Im4ZP5JzO5Fe7mnv+eup+s6cIYNmgvClgkm3CC4XBkZXRjkm+BK kB7uFYyuWhNGISIlmAMwkYVuLWRCHyHUVlX1uscJ3kfW4KHBbRv0u3ukDUGt LxOBbbehtQv+leGktzsJY+m7+QlPkIgik4O3gqaRSETFZUZ4lQmuKI+XmP4f Bm/SuCozcs44L8E0K1ayVCeHiSGjOYFOCv7agg7/yCUNuNgI/bkW8kKDveP5 FGrtSJcg35yN0u3WVcFyvCnlS7gmzYLxKHYkbahA47SP7RaucK9e5ITx/7mx 4zpNP0U5gPUSWEI5kY//W9fnnh/PJ/7MG2vgzVz3d4MLRpJ1k+OEEwimoRPt HnuTUTxy504Y+qF1Kh9pP3gmWf+JAgAA --------------58832E667D64E1B6F879BCD4 Content-Type: application/x-gzip; name="Pgsql_Ecpg_Type_Cache.diff.gz" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="Pgsql_Ecpg_Type_Cache.diff.gz" H4sIAPbXwTkCA71X+2/bNhD+Wf4rrgaaypZcy3kvntMEWZYNCzrn0QEFChiK TNlCZVETqbpemv99d6QeNPJSm2FGYtHk3fH43em7Y6/XA5EF/SiRLAv9gIk+ C9JZP45u+uwrC3LJ3gZveRbNrF+zCK5YCoMdGHgH3vaBN4BNz/NajuM8b+MB 9S2tfnQEvc2dTXewBQ49f9qFo6MWWBmTeZaA3U1lBqMRvPnkvenAO3j/4fwc DgBnhy24a0HL6XdbDnRBrlIGURLybOHLiCcQ+MGc0VIfv1qOkFkeSDg9GZ+R 6MQQnRSity3HelbM6ibsqxyiKJ7Ysng0pfEN57EVCT/L/BX+vsP/yrM0F3Pw 4Ysf5wzQMTlna86Rb7hBAF/QWMspt6adldiEDNjPOgbdrnq66BegJZd8gsKn Dp6u2dmWE5bIbIWIWeozgoUfxzywRfQP4+HzfnQ6BEhlqHeIvsAICqCM+cI1 XKuBM9cJZ1zUp6I1PcKpSoigNpAWciHBT6aIdQZ+xiD1hWBTQA8h5rNZlMww GlnKBRMF+AX0hJWGPhITdS4/mSinbIKTZtyAJ0JCcX7SYwt0oth2fRX3j/yb GGOCI4V9MPczCwC6yujk75wp73US1Uh4NDc+y5jIY2l1K7HCzQYR1CkzZz6B Tm/LsFlWa70SVYtcC8GurY1GZAzPYt3SotXHxOZpHiMMOpthGck5LFkcw+eE LxMFmgDJQaQMgyDnCL+APFW4W9Yjeb5Rb+kOdl2vM4R+v4hPM6X9Uokwb6i0 6ZVKGJD9pkoDQ2mzqdKWobTdVGmnVJL4UrggGIMbFvNlU/0KSEUxjXT2vAqT MOZ+Y1/3vMGaXlM0B972ZhXulGL3/edEGxW8+Ob9qJH9ypEppndztWpvGS0a qw32t001fNMXaXPdXSObWIY1pqmqEd4kX7AsClATydQisrQNNkAaqfWG5sKr gmCMuZEx1gyuGaPmkroojEbkY0dXmqLer8kYZYEcI9ox2BP9sinA0O0AdRyT okzJLGaJ3RYsZoFm7pgtIMz4AlBItQnLOcPiQC60O+DAYOAqDu8dxlHCEq4K mEgzhDS0jR1daGj19bTtKhllqfR2fEH9kK13wnKRoCUkYHPsgrGdUibgxhe6 HlxhEciFrRepKRqfXZ5eTa4/jM/x8ecfCmoCqq4nvuSxXcE0vpgxqfoQuziQ h3+6YKudKHF+WSX+Igqu0X1bBwh3uro435qc/HZ8eXxyfXoJ376poDUUn/x1 fPnx9/dn5B85qHSpZOMDy6fyVQAPFWH7AeYxFTpVLaiIJ1zCislSPFqksaq8 bFpMqXJiHDr0Y6EaBp025CVWf7tNg6IlBYo0vJ4ewPXH8Sm95v6NL9gBTsGJ +lbGcCQ+Je319NChdYlgeod6WO79DtorJtrYoLYT3ta4NngZlZGyUyvTfXwR xMzP7DoXinfEaDMRSzA7GDCOaD/SqXRacIsNtupYVV+RixozqBuVgKcRmxYd SK9qSmhJj4SL05aSrfqUB6TI6PgMgxiFK5rWI5p9qFnCeXUn2N3Zc/fB2dv2 XH0jQHn8KHLCFJmEEYunqmGC+ufPkKiBgI0N0Eczlh2no43cKr+tR3qynhZS 7wP1kSPNcoWudVs8n0srziFkS0yjWU7gi7f38ghjqk66u4v1mY665+7py4/6 lDcgFZnOsJimK4/2/v+iQr3bi+lwfBHStF3mTh2XTrXJC5hSG1hrpHtVGJsT aM8yE+QHiLRUfIBMn0LgYY4tjFkvs1TTb2EPj1eZRhouh99BxYaKScf1dL8a 36PlYuGuHPz39PwEPM1Yu7fm4X0iXj/Xg7fGp3xQ90W6GA5LWlP58qq6q5dM 8y8eJmUCoBEAAA== --------------58832E667D64E1B6F879BCD4--