Re: Error on Windows

From: Laurenz Albe <laurenz(dot)albe(at)cybertec(dot)at>
To: Igor Korot <ikorot01(at)gmail(dot)com>, pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: Error on Windows
Date: 2019-01-10 14:44:11
Message-ID: 2b03726068c6c4f20b41230c3025a52e8bcdffad.camel@cybertec.at
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Igor Korot wrote:
> The following code compiles and executes but returns an error:
>
> [quote]
> Invalid byte sequence for encoding UTF8
> [/quote]
>
> [code]
> char *values[2];
> values[0] = NULL, values[1] = NULL;
> values[0] = new char[schemaName.length() + 1];
> values[1] = new char[tableName.length() + 1];
> memset( values[0], '\0', schemaName.length() + 1 );
> memset( values[1], '\0', tableName.length() + 1 );
> strcpy( values[0], m_pimpl->m_myconv.to_bytes( schemaName.c_str()
> ).c_str() );
> strcpy( values[1], m_pimpl->m_myconv.to_bytes( tableName.c_str()
> ).c_str() );
> int len1 = (int) schemaName.length();
> int len2 = (int) tableName.length();
> int length[2] = { len1, len2 };
> int formats[2] = { 1, 1 };
> PGresult *res = PQexecParams( m_db, m_pimpl->m_myconv.to_bytes(
> query.c_str() ).c_str(), 2, NULL, values, length, formats, 1 );
> ExecStatusType status = PQresultStatus( res );
> if( status != PGRES_COMMAND_OK && status != PGRES_TUPLES_OK )
> {
> result = 1;
> std::wstring err = m_pimpl->m_myconv.from_bytes(
> PQerrorMessage( m_db ) );
> errorMsg.push_back( L"Error executing query: " + err );
> PQclear( res );
> }
> [/code]
>
> in the "err" variable.
>
> Looking under MSVC debugger I see for a tableName a following sequence:
>
> 97 98 99 223
>
> What can I do to eliminate the error?

I'd say you should set the client encoding correctly.

Looks like the bytes represent "abcß" in some LATIN-? encoding.

Yours,
Laurenz Albe

--
Cybertec | https://www.cybertec-postgresql.com

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2019-01-10 15:44:34 Re: log level of "drop cascade" lists
Previous Message Rob Sargent 2019-01-10 14:13:51 Re: jdbc PGCopyOutputStream close() v. endCopy()