View Full Version : Feld per SQL hinzufügen!
Servus,
gibt es eine Möglichkeit per SQL einer bestehenden Datei ein oder mehrere Felder hinzuzufügen?
Danke und Gruß.
Svente
Per SQL geht das nur auf Tabellen, die auch mit SQL erstellt wurden:
alter table mytable add Fieldxxx ...
Die ist leider nicht mit SQL erstellt worden.
Per SQL geht das nur auf Tabellen, die auch mit SQL erstellt wurden
Das stimmt nicht!!!
ALTER TABLE kann auch für DDS beschriebene Tabellen ausgeführt werden.
... auch wenn ich das NICHT empfehlen würde.
Eine Spalte im DDS hinzufügen und dann ein CHGPF ausführen ist doch mindestens genauso einfach!
Beim CHGPF müssen logische Dateien weder gelöscht noch neu erstellt werden, noch müssen irgendwelche Constraints oder Trigger angefasst werden:
Einfach:
CHGPF FILE(MYLIB/MYFILE)
SRCFILE(MYSRCLIB/QDDSSRC)
SRCMBR(MYFILE)
ausführen.
Birgitta
Man beachte aber, dass sich die Dateiebenen-ID ändert und alle Programme die auf die PF oder die LF's native zugreifen neu erstellt werden müssen !
Werden die Tabelle(n) nur per SQL verwendet, ist eine Erstellung der Programme nicht erforderlich.
@Birgitta
Danke für den Hinweis.
Besser wäre es gewesen, dies per SQL abzuweisen.
Danke für die Tips. Mit ALTER TABLE hat es geklappt.
Das stimmt nicht!!!
ALTER TABLE kann auch für DDS beschriebene Tabellen ausgeführt werden.
... auch wenn ich das NICHT empfehlen würde.
Birgitta
Hallo Birgitta.
Ich habe schon mehrfach DDS-Tabellen
per SQL erweitert. Wo können da Probleme entstehen?
Gruß Joe
Hallo Birgitta.
Ich habe schon mehrfach DDS-Tabellen
per SQL erweitert. Wo können da Probleme entstehen?
Gruß Joe
Probleme sehe ich darin, dass die entsprechenden Einträge im DDS nicht oder nicht korrekt nachgezogen werden. Ein anderer Kollege macht eine Erweiterung/Änderung und erstellt die Tabelle/physische Datei mit CHGPF oder CRTPF erneut ändert.
M.E. sollte man für ein und die selbe Tabelle/phys.Datei entweder DDS oder SQL verwenden aber nicht mal so und mal so.
Den SQL Code für eine DDS beschriebene Tabelle zu ermitteln ist kein Problem. Am einfachsten ist, man verwendet den iSeries Navigator --> SQL generieren und sichert sich die Quelle entweder als Datei-Member oder in einem Verzeichnis im IFS.
Birgitta
Hallo Birgitta.
Diese "Wildwuchs"-Probleme sehe/kenne ich auch.
Ich hatte verstanden, dass es evtl. Probleme vom OS geben könnte.
Vielen Dank.
Joe
...
Werden die Tabelle(n) nur per SQL verwendet, ist eine Erstellung der Programme nicht erforderlich.
...
IIRC, Wenn man "SELECT * from ..." in eine Programm nutzt, muss man auch dann dieses Programm umwandeln. Wenn man "SELECT feld1, f2, ... from ..." nutzt, dann ist umwandeln nicht erforderlich.