Skip site navigation (1) Skip section navigation (2)

Re: sqlstate 02000 while declaring cursor/freeing statement

From: andy rost <andy(dot)rost(at)noaa(dot)gov>
To: Michael Fuhr <mike(at)fuhr(dot)org>
Cc: "Thomas F(dot) O'Connell" <tfo(at)sitening(dot)com>,pgsql-admin(at)postgresql(dot)org
Subject: Re: sqlstate 02000 while declaring cursor/freeing statement
Date: 2005-08-30 20:10:37
Message-ID: 4314BD3D.9030104@noaa.gov (view raw or flat)
Thread:
Lists: pgsql-admin
Just so that we can snip this thread, we've confirmed that free cursor 
and free statement do not affect sqlca structure elements sqlcode and 
sqlstate.

Michael Fuhr wrote:
> On Tue, Aug 30, 2005 at 09:01:36AM -0500, Thomas F. O'Connell wrote:
> 
>>On Aug 29, 2005, at 2:19 PM, andy rost wrote:
>>
>>>   $declare loop1 cursor with hold for
>>>   select distinct ( tabname )
>>>   from meta ;
>>>
>>>results in sqlca.sqlcode = 100 and sqlca.sqlstate = '02000'
>>
>>[snip]
>>
>>I don't see anything wrong with your cursor declaration, so this just  
>>looks like it's indicating that no rows were returned.
> 
> 
> See my response to the same thread in pgsql-sql about what's
> happening:
> 
> http://archives.postgresql.org/pgsql-sql/2005-08/msg00274.php
> 
> The ECPG code generator doesn't issue the DECLARE statement until
> the cursor is opened, so checking sqlcode/sqlstate immediately after
> DECLARE but before OPEN will get the error code values from a
> previous command.
> 
> Here's an excerpt from the DECLARE documentation:
> 
>   The PostgreSQL  server does not implement an OPEN statement for
>   cursors; a cursor is considered to be open when it is declared.
>   However, ECPG, the embedded SQL preprocessor for PostgreSQL,
>   supports the standard SQL cursor conventions, including those
>   involving DECLARE and OPEN statements.
> 
> Since declaring a cursor in PostgreSQL also opens it, ECPG apparently
> defers doing anything with the cursor until it finds the OPEN
> statement (i.e., EXEC SQL DECLARE generates no code, and EXEC SQL
> OPEN generates a DECLARE).
> 

-- 
--------------------------------------------------------------------------------
Andrew Rost
National Operational Hydrologic Remote Sensing Center (NOHRSC)
National Weather Service, NOAA
1735 Lake Dr. West, Chanhassen, MN 55317-8582
Voice: (952)361-6610 x 234
Fax: (952)361-6634
arost(at)nohrsc(dot)nws(dot)gov
http://www.nohrsc.nws.gov
--------------------------------------------------------------------------------



In response to

pgsql-admin by date

Next:From: Jim C. NasbyDate: 2005-08-30 20:17:38
Subject: Re: Hash index
Previous:From: David DurhamDate: 2005-08-30 19:41:34
Subject: Re: First mail after registration

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group