Einzelnen Beitrag anzeigen

Benutzerbild von MrSpock
MrSpock
(Co-Admin)

Registriert seit: 7. Jun 2002
Ort: Owingen
5.865 Beiträge
 
Delphi 2010 Professional
 
#4
  Alt 5. Nov 2002, 11:40
Hallo foxy,

oooops, da warst du ja schon weiter, als ich angenommen habe.

Du hast dich also enbtschlossen die Tabelle dynamisch zuerstellen, das ist auch OK, insbesondere für temporäre Tabellen. Dauerhafte Tabellen könntest du einfach mit der Datenbankoberfläche erstellen und dann (leer) mit ausliefern.

Jetzt zu deiner Frage: Ich bin mir nicht klar, ob ich dich korrekt verstanden habe. Du sagst, du willst neue Spalten erzeugen. Spalten representieren in dem üblichen Sprachgebrauch relationaler Datenbanken die Felder von Tabellen, Zeilen dagegen Datensätze.

Willst du Datensätze einfügen, geht das mit:

Code:
try
  T.Append;
  T.FieldByName('Wert').Value := derWert;
  T.FieldByName('..').Value := ...
  ...
  T.Post;
except
  on exception do
  begin
     { Fehlermeldung ausgeben }
     ...
     T.Cancel;
  end
end;
Wenn du die Tabelle mit der DB Oberfläche erstellst, kannst du über einen Doppelklick auf das TTable Objekt die Felder in das Programm einfügen und dann anstatt über FieldByName über z.B. TWert.AsValue := ... die Zuweisungen ausführen.

Willst du tatsächlich Spalten hinzufügen, geht das natürlich am Anfang über FieldDefs und später über SQL durch:

Code:
ALTER TABLE T ADD NeuSpalte INTEGER
Albert
Live long and prosper


MrSpock
  Mit Zitat antworten Zitat