Einzelnen Beitrag anzeigen

Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Stringgrid in Datenbank speichern

  Alt 26. Jan 2009, 09:52
Mach dir doch eine Tabelle folgender Struktur:
Code:
Key|Value
Datentyp Key:varchar(50), Value:varchar(250)

Dann eine Procedure zum Speichern:
Delphi-Quellcode:
procedure Txxx.SaveKeyValue(const key,value:string);
begin
  Query.Parameter.ParamValues['Key'] := key;
  Query.Open;
  if Query.IsEmpty then
  begin
    Query.Append; // neuen Datensatz anlegen
    Query['Key'] := key;
  end
  else
    Query.Edit;
  Query['Value'] := value;
  Query.Post;
  Query.close;
end;

procedure Txxx.SaveStringGridCell(Row,Col:Integer; const value:sring);
begin
  SaveKeyValue(Format('SG_%d:%d', [Row, Col]), value);
end;
Hinweis: der Sourcecode ist möglicherweise nicht fehlerfrei, weil ich den "frei von der Leber weg" eingetippt habe.
Aber das Prinzip ist, dass du die x- und y-Koordinaten (also Col und Row) in einen "Key" umwandelst und alles in einer Tabelle speicherst.

Ein Grund, Konfigurationsdaten in der Datenbank und nicht in einer INI-Datei zu speichern, wäre die Mehrplatzfähigkeit.
Jeder Arbeitsplatz kann über die Datenbank auf die gleiche Konfigurationdaten zugreifen.
Bei INI-Dateien bräuchte man zusätzlich zum Datenbankserver auch noch einen Fileserver.
Es hängt aber immer vom Ziel ab.
Manchmal möchte man jeden Arbeitsplatz für sich konfigurieren; dann könnte eine INI-Datei günstiger sein.
  Mit Zitat antworten Zitat