2012-04-02 4 views
0

Wenn Sie ein tunkönnen Sie eine ALTE VIEW und ein ALTEN WHERE

ALTER TABLE <name> 

Sie ALTEN COLUMN verwenden können, so dass Sie sich wieder die gesamte Tabellendefinition nicht tippen.

sagen, dass ich einen Blick haben, die mit eher WHERE entity = 'MyEntity'

endet, als wenn man im Grunde die gesamte Sichtdefinition schreiben, kann ich etwas nur tun, wie ...

ALTER VIEW schools ALTER WHERE entity = 'newMyEntity' 

Danke,

+0

Welches DBMS? PostgreSQL? Orakel? DB2? SQL Server? –

+0

Es müsste wirklich auf Oracle und MS SQL Server laufen – david99world

+0

Das ist ein * außergewöhnlich * engen Anwendungsfall, für sehr wenig Nutzen. Warum sollten die Datenbankanbieter diese Zeit aufwenden? –

Antwort

0

Sie können wirklich nicht. Das Problem ist, dass das System irgendwie in der Lage sein muss, "richtige" SQL für Ihre neuen Ansichten zu finden, basierend auf Änderungen, die Sie an der ursprünglichen Tabelle (Spaltentyp usw.) vorgenommen haben. Während dies für triviale Fälle funktionieren könnte (Hinzufügen neuer Spalten, Verwenden von einfachen Sichten usw.), wäre dies im allgemeinen Fall eine nahezu unmögliche Angelegenheit. Eine solche Änderung würde auch die Notwendigkeit bedeuten, Indizes, Beschränkungen in der Tabelle etc. zu überprüfen.

0

Soweit ich weiß und vorausgesetzt, Sie sprechen von SqlServer, können Sie das nicht tun. Here is the doc

Verwandte Themen