<a href="http://www.php.cn/code/8708.html" target="_blank">视图</a>
ist eine virtuelle Tabelle. Für Benutzer, die die Ansicht verwenden, ist es im Grunde dasselbe wie die Verwendung einer normalen Tabelle. Die Ansicht ist in der Datenbank nicht vorhanden und die Daten in der Ansicht werden dynamisch generiert.
Vorteile von Ansichten gegenüber gewöhnlichen Tabellen:
Einfachheit: Bei der Verwendung von Ansichten müssen Sie sich nicht um die entsprechenden Strukturbedingungen nachfolgender Tabellen kümmern. Für Benutzer sind Ansichten gefilterte Ergebnisse . Satz.
Sicherheit: Benutzer können nur auf Ergebnismengen zugreifen, für die sie Abfragen durchführen dürfen.
Datenunabhängigkeit: Sobald die Ansichtsstruktur festgelegt ist, haben Änderungen an der tatsächlichen Tabelle keine Auswirkungen auf Ansichtsbenutzer.
Ansichtsvorgänge sind unterteilt in 创建视图
, 修改视图
, <a href="http:/%20/%20www.php.cn/php/php-tp-remove.html" target="_blank"><code><a href="http://www.php.cn/php/php-tp-remove.html" target="_blank">删除</a>视图
Ansicht löschen, 查看视图定义
.
#创建视图 create [or replace] [algorithm={undefined|merge|temptable}] view view_name[(column_list)] as select_statement [with[cascaded|local] check option] # 修改视图 alter [algorithm={undefined|merge|temptable}] view view_name[(column_list)] as select_statement [with[cascaded|local] check option]
Beispiel:
create view view_test as select t1.sid,t1.username,t2.department from test1 t1 left join test2 t2 on t1.sid=t2.sid;
Beschreibung:
Das Schlüsselwort from darf keine Unterabfragen enthalten.
Ansichten, die nicht aktualisiert werden können: enthalten Aggregatfunktionen / group/distinct/having/union, konstante Ansicht, select enthält Unterabfrage, jion, aus einer Ansicht, die nicht aktualisiert werden kann, wobei Unterabfrage auf die Tabelle in der from-Klausel verweist.
mit[cascaded|local] Prüfoption Ermöglicht absolut die Aktualisierung von Daten, sodass der Datensatz nicht mehr die Ansichtsbedingungen erfüllt. Darunter local-只需满足本视图条件就可以更新
, cascaded-必须满足所有针对该视图的所有视图的条件才可以更新
. Der Standardwert ist kaskadiert.
Wie gewöhnliche Tabelle
select * from view_test;
#删除视图 drop view [if exists] view_name [,view_name2]...[restrict|cascade] #举例 drop view view_test;
Ab MySQL 5.1 verwenden Sie show Bei Verwendung des Tabellenbefehls wird nicht nur der Tabellenname, sondern auch der Ansichtsname angezeigt.
[Verwandte Empfehlungen]
1. Kostenloses MySQL-Online-Video-Tutorial
2. Neuestes MySQL-Handbuch-Tutorial
Das obige ist der detaillierte Inhalt vonStellen Sie das Konzept und die Funktionsweise von Ansichten in MySQL vor. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!