# [oracle] create table oder create view



## m3000 (6. Januar 2005)

Hallo, 

ich verstehe, dass der Vorteil von "create view" gegenüber "create table" ist, dass kein physikalischer Platz benötigt wird. Wo aber ist eigentlich der Nachteil? Meine Standarddoku "SQL in 21 Tagen" sagt dazu nichts. 

Dank und Gruss

m3000


----------



## mschuetzda (6. Januar 2005)

Besser ist diese Syntax "create *or replace * view" , da man die "Sichten" damit auch gleich ändern kann, wenn Sie schon existieren. 
Eine "View" kann ein Ausschnitt einer Tabelle oder eine Zusammenstellung beliebiger Spalten aus mehreren Tabellen sein.
Nachteile:
Views werden bei jeder Selektion erst zusammengestellt, kann langsamer sein als ein select auf Table.
Nur für einfache Views gibt es die Möglichkeit Daten zu ändern, Update u. Insert. 
Wenn mehrere Tabellen beteiligt sind, macht das Probleme, da die View ja nur ein Ausschnitt   
aus diesen Tabellen darstellt.


----------



## m3000 (6. Januar 2005)

Hallo, 

danke schon mal. 

Datenänderungen sind irrelevant für mich. 


> Views werden bei jeder Selektion erst zusammengestellt, kann langsamer sein als ein select auf Tab


 In meinen Skripten (vom Stellenvorgänger erstellt) wird mehrfach auf eine gleiche virtuelle Tabelle zugegriffen, ggf. anschliessend nochmal verknüpft. In dem Fall ist es also performanter, erst einmal den "create table"-Aufwand zu betreiben, und dann darauf zuzugreifen. Weil sonst bei drei view-Abfragen dreimal der Zeit-/Systemaufwand gebraucht würde. Richtig? 


Gruss
m3000


----------



## mschuetzda (6. Januar 2005)

Ich weiß zwar nicht genau wie die konkrete Situation bei Dir ist,
aber wenn Du erst die Daten in eine neue Tabelle schreibst, dann ggf. noch Indizes setzen musst und dann selektierst dauert es sehr viel länger als die Views.


----------



## m3000 (7. Januar 2005)

Hallo, 

bisher arbeite ich ohne Indizes, kannte ich noch nicht*. Habe nun mal das Kapitel gelesen und werde, wenn ich mal Zeit haben sollte, ans Testen per "set timing on" machen. 
Danke erstmal, 

Gruss

m3000

* So kann's gehen, wenn man sein Wissen eher zufällig aus der Situation her ansammelt und nicht einen logisch aufgebauten Kurs besucht. Hat Vorteile, hat aber auch Nachteile.


----------

