Re: What is the problem with this code?

Clemens Ladisch <[email protected]> Fri, 19 Oct 2018 09:04:31 +0200
Newsgroups gmane.comp.db.postgresql.odbc
Message-ID <[email protected]>
Igor Korot wrote:
>     SQLWCHAR *qry1 = new SQLWCHAR[query1.length() + 2];
>     memset( qry1, '\0', query1.length() + 2 );

memset expects the length to be in bytes.

>     ret = SQLPrepare( m_hstmt, qry1, SQL_NTS );
>     ret = SQLDescribeCol( m_hstmt, 1, columnName, 256, &columnNameLen, &columnDataType, &columnDataSize, &columnDataDigits, &columnDataNullable );
>
> The SQLDescribeCol() call fails with the error invalid column number".

Does SQLExecute work?  Does SQLNumResultCols give 1?

The specification says "for performance reasons, an application should
not call SQLDescribeCol before executing a statement."  But it should
work anyway; if not, this would be a bug.  What are the settings of
"Parse Statements" and "Server side prepare" of the data source?


Regards,
Clemens