[GENERAL] Where is the error? - Mailing list pgsql-general

From Igor Korot
Subject [GENERAL] Where is the error?
Date
Msg-id CA+FnnTz0D1xZ7MS5fqPWWsPewwnb1pZDE9MNzzoK2dUO90AQGw@mail.gmail.com
Whole thread Raw
Responses Re: [GENERAL] Where is the error?  (Christoph Moench-Tegeder <cmt@burggraben.net>)
List pgsql-general
Hi, ALL,
I am trying to execute following piece of code:

[code]
    std::string query1 = "DECLARE alltables CURSOR SELECT
table_schema, table_name FROM information_schema.tables WHERE
table_type = 'BASE TABLE' OR table_type = 'VIEW' OR table_type =
'LOCAL TEMPORARY';";
    res = PQexec( m_db, query1.c_str() );
    if( PQresultStatus( res ) != PGRES_COMMAND_OK )
    {
        std::wstring err = m_pimpl->m_myconv.from_bytes(
PQerrorMessage( m_db ) );
        errorMsg.push_back( err );
        PQclear( res );
        return 1;
    }
[/code]

However running it gives an error in the query:

[quote]
RROR:  syntax error at or near "SELECT"
LINE 1: DECLARE alltables CURSOR SELECT table_schema, table_name FRO...

                             ^
[/quote]

The hat symbol is pointing to the "n" in the "table_name".

However trying to execute this query (without DECLARE part) inside
psql does not return any errors and runs fine.

What am I missing?

The code is written in C++ and compiled in C++11 mode with gcc 5 on
Gentoo Linux.

Thank you.


pgsql-general by date:

Previous
From: Andres Freund
Date:
Subject: Re: [GENERAL] Logical decoding CPU-bound w/ large number of tables
Next
From: Christoph Moench-Tegeder
Date:
Subject: Re: [GENERAL] Where is the error?