Dienstag, 7. April 2026

Oracle SQL: Tabelle kopieren Anleitungen

 Um eine neue Spalte zu einer bereits existierenden Tabelle in Oracle hinzuzufügen, nutzt du den ALTER TABLE-Befehl. Das ist der Standardweg, um die Struktur zu verändern, ohne die Daten zu gefährden.

Hier sind die verschiedenen Szenarien:

1. Eine einfache Spalte hinzufügen

Wenn du nur eine neue Spalte (z. B. für Kommentare) ergänzen willst:

SQL
ALTER TABLE table_temp 
ADD (neue_spalte VARCHAR2(100));

2. Mehrere Spalten gleichzeitig hinzufügen

Du kannst auch eine ganze Liste von Spalten in einem Rutsch hinzufügen, indem du sie mit Kommas trennst:

SQL
ALTER TABLE table_temp 
ADD (
    erstellt_am DATE,
    status_id   NUMBER(5),
    bemerkung   VARCHAR2(255)
);

3. Spalte mit einem Standardwert (Default)

Das ist besonders nützlich, wenn die Spalte nicht leer (NULL) sein darf. Oracle befüllt dann alle existierenden Zeilen automatisch mit diesem Wert:

SQL
ALTER TABLE table_temp 
ADD (aktiv_flag CHAR(1) DEFAULT 'Y' NOT NULL);

Profi-Tipps für Oracle:

  • Position der Spalte: In Oracle werden neue Spalten technisch gesehen immer am Ende der Tabelle angefügt. Wenn du die Reihenfolge in der Anzeige (z. B. in einem Tool wie SQL Developer) ändern willst, müsstest du die Tabelle theoretisch neu erstellen – oder du steuerst die Reihenfolge einfach über dein SELECT-Statement.

  • Performance: Bei sehr großen Tabellen (Millionen von Zeilen) kann das Hinzufügen einer Spalte mit einem DEFAULT-Wert und NOT NULL seit Oracle 11g sehr schnell gehen, da Oracle hier einen Optimierungs-Trick nutzt und nicht jede Zeile physisch umschreiben muss.

Möchtest du direkt wissen, wie du die neue Spalte mit den Daten aus deiner TGRPOP-Logik von vorhin befüllst?