Nein, ich benutze ZEOS zur Verbindung mit der Datenbank (Firebird Embedded).
Zur einfachen Steuerung habe ich mir eine Klasse geschrieben, die unter anderem die
DB liest/schreibt. Diese Methoden sind so aufgebaut:
Delphi-Quellcode:
procedure TDBBase.Read(Obj: TObject);
var
Test: TTest;
begin
if (Obj is TTest) then
begin
Obj.Property1:=getString('[SPALTEN_NAME]');
end;
end;
//ReadString:
function TDBBase.getString(Field: string): String;
begin
if (fdbUTF8) then
begin
result:=utf8decode(ZQuery.FieldByName(Field).AsString);
end else
begin
result:=ZQuery.FieldByName(Field).AsString;
end;
end;
Ein aufruf erfolgt dann so:
Delphi-Quellcode:
var
Test: TTest;
begin
Test.ID:=20;
Read(Test);
ShowMessage(Test.Property1);
Test.Free;
end;
So habe ich das bisher immer gemacht. Wenn UTF8 auf True steht, wird Zeos als Verbindungsparameter "codepage=utf8" übergeben. Das hat bis Delphi 2009 super funktioniert.