Проблемы с кодировкой при включении UnpreparedExecute

Обсуждение возникших проблем, предложений и ошибок PgDAC компонентов
Ответить
danblack
Сообщения: 2
Зарегистрирован: Вт 23 июл 2013 04:39

Проблемы с кодировкой при включении UnpreparedExecute

Сообщение danblack » Вт 23 июл 2013 14:29

Delphi XE2.
Последняя триальная версия PgDAC.
Кодировка БД: UTF-8.
Любая версия PostgreSQL

Код программы

Код: Выделить всё

program Project1;

{$APPTYPE CONSOLE}

{$R *.res}

uses
  System.SysUtils, PgAccess, Winapi.Windows;

var
  Query: TPgQuery;
  Connection: TPgConnection;
  Start: Cardinal;
  Finish: Cardinal;
  Caption: string;
begin
  try
    Connection := TPgConnection.Create(nil);
    Connection.Server := '10.0.2.2';
    Connection.Database := 'main';
    Connection.Username := 'indy';
    Connection.Options.UseUnicode := True;
    Query := TPgQuery.Create(nil);
    Query.Connection := Connection;
    Query.SQL.SetText('SELECT ''тест'' AS test');
    Query.Open;
    Caption := Query.FieldByName('TEST').AsString;
    MessageBox(0, PWideChar(Caption), '', MB_OK);
    Query.Close;
    Query.Options.UnpreparedExecute := True;
    Query.Open;
    // При включении UnpreparedExecute запрос возвращает данные в неверной кодировке
    Caption := Query.FieldByName('TEST').AsString; // 'тест'
    MessageBox(0, PWideChar(Caption), '', MB_OK);
  except
    on E: Exception do
      Writeln(E.ClassName, ': ', E.Message);
  end;
end.
При включении UnpreparedExecute запрос возвращает данные в неверной кодировке. См. код.

DemetrionQ
Devart Team
Сообщения: 51
Зарегистрирован: Пн 28 янв 2013 11:54

Re: Проблемы с кодировкой при включении UnpreparedExecute

Сообщение DemetrionQ » Ср 24 июл 2013 09:41

Здравствуйте.

Спасибо за информацию. Мы воспроизвели проблему и занимаемся её изучением. Мы сообщим вам, если появятся какие либо результаты по данному вопросу.

Ответить