Mam miejsce, w VIEW
którym próbuję utworzyć skrypt ewolucji, więc mogę dodać do niego kolumnę. Ta część działa dobrze; kolumna dodana dobrze. Jednak odwrotna sytuacja nie działa; usuń ostatnią dodaną kolumnę z ERROR: cannot drop columns from view
komunikatem. Problem polega na tym, że ten konkretny pogląd ma wiele odniesień, zarówno od, jak i do, dlatego nie mogę po prostu DROP CASCADE
tego cholerstwa!
Czy istnieje powód, dla którego nie mogę usunąć nowo dodanej kolumny z danego VIEW
? Co zatem mogę zrobić, aby wykonać to zadanie?
(Uwaga: okoliczności są tutaj takie, jakie są, ale bardzo dobrze widzę podobną sytuację, czyli w wielu przypadkach wypadanie kolumny z widoku).
CREATE OR REPLACE VIEW
z tym samym def, z wyjątkiem dodatkowej kolumny (ponieważ w tabeli ref'ed dodano nową kolumnę, więc widok musi ją uwzględnić). W „decentralizacja” usuwa kolumnę z ref'ed tabeli, więc VIEW
musi też nie zwracać go już.
ALTER VIEW ... ADD COLUMN
. UżywaszCREATE OR REPLACE VIEW
? Pokaż proszę swój kod .