Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   FireDAC max_string_size bei PostgreSQL (https://www.delphipraxis.net/211989-firedac-max_string_size-bei-postgresql.html)

backdraft 29. Nov 2022 10:39

Datenbank: PostgreSQL • Version: 9.6 • Zugriff über: FireDAC

FireDAC max_string_size bei PostgreSQL
 
Hallo,

ich habe bei der Umstellung von einem Projekt auf die aktuelle Delphi 11.2 Version ein Problem mit Text-Feldern in PostgreSQL.

Bei einem Query wird ein Parameter mit
Code:
ParamByName('xxx').AsString := ...;
übergeben.
Ist dieser Wert > als 4000 Zeichen, kommt es zu einer Exception, wenn ich den Query abschicke.
Auch ein LoadFromStream löst das Problem nicht.

Im FireDAC.Phys.PGWrapper wird die max_string_size auf 4000 gestellt.
Was funktioniert ist, dass ich
Code:
ParamByName('xxx').Size := 10000;
einstelle, aber das kann ich ja nicht bei jedem Parameter machen müssen.

Bestimmt gibt es irgendwo eine Standardeinstellung dafür, ich weiss nur nicht wo.

Code:
Connection.FormatOptions.MaxStringSize := 10000;
ist es nicht :-(

Vielleicht hatte ja jemand schon das gleiche Problem.

backdraft 5. Dez 2022 12:22

AW: FireDAC max_string_size bei PostgreSQL
 
Hat keiner einen Tipp?

Union 5. Dez 2022 13:56

AW: FireDAC max_string_size bei PostgreSQL
 
Wie wär es mit einem Helper für TFDParam?

Delphi-Quellcode:
procedure TFDParamHelper.SetAsString(const AValue: String);
begin
  if AValue = '' then
    Clear
  else
  begin
    Size := 10000;
    Value := AValue;
  end;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:08 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz