# Unterschied Tabelle und view



## sisela (24. Januar 2004)

Hallo,
kann mir jemand den Unterschied zwischen einer Tabelle und einer View erklären? Also rein Datenbanktechnisch...

Danke...


----------



## sisela (24. Januar 2004)

Niemand hier der mir sagen kann was ein View ist. Nur theoretisch!
Na los ihr Freaks...

Danke


----------



## sisela (25. Januar 2004)

Also falls es noch jemanden ausser mich interessiert:

Tabellen beinhalten Daten und Definitionen, während Views nur Definitionen enthalten. Man nennt Views auch Benutzersichten weil es bestimmte Ausschnitte einer Tabelle sind.
Bei einer Anfrage auf eine View wird aber immer wieder auf die dazugehörige Tabelle zurückgegriffen.

Der Befehl zum Erstellen ist:


```
CREATE VIEW 'viewname' (spaltenliste) AS (select anweisung);
```

Allerdings sei angemerkt, dass nicht alle Anfragen funktionieren, so gibt es Einschränkungen bei den Befehlen:  INSERT,  UPDATE und DELETE.

Aber dazu möchte ich mich nicht weiter auslassen.

Falls noch jemand seinen Senf dazugeben will nur zu. 


----------
Zitat: Wer Freunde ohne Fehler sucht bleibt ohne Freunde.


----------



## Ralph (26. Januar 2004)

Ein View ist nichts anderes als ein gespeichertes SELECT Statement. sprich mann kann komplexe Abfragen in einem View speichern und dann darüber weitere Abfragen machen. 

z.b.: Haste Du eine Software in der verschiedene Informationen immer gleich gelesen werden (mit vielen Verknüpfungen[Joins], Berechnungen etc z.b.). Dann ist es sinnvoll dieses in einem View zu speichern und nachher nur noch SELECT spalte1,spalte2 from VIEWNAME zu benutzen, als SELECT a.*, b.*,sum(c.preis*d.anzahl) from .... usw.

Views solte man nich untereinander Verknüpfen -> Performance einbußen.
MySQL ünterstüzt glaub ich noch keine Views (oder doch schon in der 5.0?) Oracle aber z.b.


----------



## sisela (27. Januar 2004)

Danke dir Ralph, für deinen Kommentar.

Spezielle (komplexe) Informationen in einem View speichern, macht denke ich  einen Sinn, wenn man dann öfter darauf zugreift und durch das View öftere komplexe (SELECT) Anfragen vermeiden kann.

Also ich benutze MySQL 4.0.14 und dort werden views unterstützt.

-------------------
Zitat:  Oft erkennt man wie dumm man war aber nie wie dumm man ist.


----------

