AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi ABSTable und FieldDefs.Add()
Thema durchsuchen
Ansicht
Themen-Optionen

ABSTable und FieldDefs.Add()

Ein Thema von NoGAD · begonnen am 21. Mär 2020 · letzter Beitrag vom 27. Mär 2020
Antwort Antwort
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#1

ABSTable und FieldDefs.Add()

  Alt 21. Mär 2020, 10:01
Datenbank: ABSDataBase • Version: 7.91 • Zugriff über: ABSTable
Hallo,

ich habe vor zu einer bestehenden Tabelle ein Feld hinzuzufügen.

Leider bekomme ich es mit der TABSTable Komponente nicht hin.
Irgendwo habe ich einen logischen Fehler.


Mein Code:
Code:
      Table.Close;
        { Wenn Tabellenfeld nicht existiert }
        if Table.FieldDefs.IndexOf( 'neues_testfeld' ) = - 1 then
          try
            Table.FieldDefs.Add( 'neues_testfeld', ftstring, 5, false );
          except
            showmesage('Ein Fehler trat auf.' );
            Exit;
          end;
        { Wenn Tabellenfeld nicht existiert }
      Table.Open;

Das neue Feld taucht einfach nicht auf.
Ein Table.FieldDefs.Update; hilft auch nicht vor Table.Open;

Ich bin ratlos.

LG Mathias
Mathias
  Mit Zitat antworten Zitat
Benutzerbild von scrat1979
scrat1979

Registriert seit: 12. Jan 2007
Ort: Sulzbach a.d. Murr
1.028 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: ABSTable und FieldDefs.Add()

  Alt 21. Mär 2020, 10:08
Frage: Wird der Code überhaupt ausgeführt (springt der Debugger in den IF-Block)?

Falls es nicht funktioniert dann mach es mit einem SQL-Statement über ein TABSQuery. Ich mache es damit und es funktioniert einwandfrei. Von den TABSTable-Komponenten lasse ich die Finger, bin mit SQL flexibler

Viel Erfolg!

EDIT: Schau mal hier...
Michael Kübler

Geändert von scrat1979 (21. Mär 2020 um 10:19 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: ABSTable und FieldDefs.Add()

  Alt 21. Mär 2020, 12:39
Frage: Wird der Code überhaupt ausgeführt (springt der Debugger in den IF-Block)?

Falls es nicht funktioniert dann mach es mit einem SQL-Statement über ein TABSQuery. Ich mache es damit und es funktioniert einwandfrei. Von den TABSTable-Komponenten lasse ich die Finger, bin mit SQL flexibler
An einem SQL Befehl habe ich mich noch nie versucht.
Wie sähe der in meinem Beispiel bitte aus und muss ein RestructureFieldDefs dann auch ausgeführt werden?

LG Mathias.
Mathias
  Mit Zitat antworten Zitat
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: ABSTable und FieldDefs.Add()

  Alt 21. Mär 2020, 17:14
Nun habe ich durch mehrere Tests folgendes erstellt:


Code:
          ABSQueryq.SQL.Text := 'ALTER TABLE ' + Table_Name + ' ADD (IF NOT EXISTS neues_testfeld VARCHAR(5) );';
          ABSQuery1.ExecSQL;

Aber die Spalte wird nicht im DBGrid angezeigt.



Es hat sich erledigt, ich hatte noch weiteren Code anhängig, welcher dagegen gearbeitet hatte.
Mathias

Geändert von NoGAD (21. Mär 2020 um 17:19 Uhr) Grund: Fehler gefunden
  Mit Zitat antworten Zitat
Benutzerbild von scrat1979
scrat1979

Registriert seit: 12. Jan 2007
Ort: Sulzbach a.d. Murr
1.028 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: ABSTable und FieldDefs.Add()

  Alt 21. Mär 2020, 22:12
Nun habe ich durch mehrere Tests folgendes erstellt:


Code:
          ABSQueryq.SQL.Text := 'ALTER TABLE ' + Table_Name + ' ADD (IF NOT EXISTS neues_testfeld VARCHAR(5) );';
          ABSQuery1.ExecSQL;

Aber die Spalte wird nicht im DBGrid angezeigt.



Es hat sich erledigt, ich hatte noch weiteren Code anhängig, welcher dagegen gearbeitet hatte.
Perfekt! Wollte gerade ein Beispiel posten Die Onlinereferenz von ABS ist übrigens echt gut. So als Tip bei zukünftigen Problemen.
Michael Kübler
  Mit Zitat antworten Zitat
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: ABSTable und FieldDefs.Add()

  Alt 22. Mär 2020, 09:42
Dankeschön.

Das Thema kann bitte als gelöst markiert werden. Ich weiß leider nicht, wie ich das machen kann.
Mathias
  Mit Zitat antworten Zitat
Benutzerbild von NoGAD
NoGAD

Registriert seit: 31. Jan 2006
Ort: Weimar
345 Beiträge
 
Delphi 10.4 Sydney
 
#7

AW: ABSTable und FieldDefs.Add()

  Alt 27. Mär 2020, 12:38
Thema als offene Frage entfernt
Mathias
  Mit Zitat antworten Zitat
Antwort Antwort

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:00 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