Thema: Haushaltsbuch

Einzelnen Beitrag anzeigen

Benutzerbild von FAlter
FAlter

Registriert seit: 21. Jul 2004
Ort: Ostfildern
1.095 Beiträge
 
Delphi 10.2 Tokyo Starter
 
#16

Re: Haushaltsbuch

  Alt 28. Mai 2008, 10:31
Hi,

nein, in diesem Fall nutze ich kein SQL. Die DB-Klassen sind so ausgelegt, dass sie ohne SQL funktionieren, bzw. wenn eine echte DB abgefragt werden soll, wird der SQL-String zusammengebastelt.

Ungefähr so:

Delphi-Quellcode:
function TMySqlDb.Get(const Table: String; const Fields: array of String;
  Condition: TQueryCondition; const From, Count: Cardinal): TQueryResult;
var
  L, H, I: Integer;
  FieldNames: String;
  F, C: String;
begin
  try
    L := Low(Fields);
    H := High(Fields);

    if L > H then
      FieldNames := '*'
    else
    begin
      FieldNames := '';
      for I := L to H do
        FieldNames := FieldNames + ', `' + Escape(Fields[I]) + '`';

      System.Delete(FieldNames, 1, 2);
    end;

    Str(From, F);
    Str(Count, C);

    Result := DoQuery(
      'SELECT ' + FieldNames +
      #13'FROM `' + Escape(Table) +
      '`'#13'WHERE ' + (Condition as TMySqlCondition).GetSQL +
      #13'LIMIT ' + F + ', ' + C
    );
  finally
    Condition.Free;
  end;
end;
Aber bei der CSV-Klasse wird das ganze ohne SQL erledigt. Wobei Bedingungen da noch nicht funktionieren, aber das kommt noch.

Mfg
FAlter

[edit] Im ersten Beitrag gibts ne neue Version. [/edit]
Felix Alter
Japanurlaub 2015
  Mit Zitat antworten Zitat