ich habe eine Oracle-Tabelle: ADDON_USERS mit ca. 35 Spalten.
Nun soll eine Spalte hinzukommen.
Das klappt mit alter Table eigentlich ganz gut.
Aber dummerweise wird die neue Spalte ans Ende gestellt.
Ich hätte die neue Spalte aber gerne an 21. Position und nicht
an 36…
Kann mir hier einer helfen?
Hallo Sina!
Mach’s doch so (ich verwende der Übersichtlichkeit eine Beispieltabelle):
CREATE TABLE my\_tab(a NUMBER, c NUMBER);
ALTER TABLE my\_tab ADD (b NUMBER);
ALTER TABLE my\_tab RENAME TO my\_tab\_t;
CREATE OR REPLACE VIEW my\_tab AS SELECT a, b, c FROM my\_tab\_t;
Voilá!
Es ist übriges wirklich keine gute Idee sich auf die Reihenfolge und/oder Anzahl der Spalten in einer Tabelle zu verlassen. Sowas hier:
INSERT INTO my\_tab VALUES(1,2,3);
ist gaaaaaanz böse! Richtig wäre natürlich:
INSERT INTO my\_tab(a,b,c) VALUES(1,2,3);
Gruß
Martin