Es gibt keinen Index für Ansichten in MySQL. Eine Ansicht ist eine virtuelle Tabelle, die nicht tatsächlich in der Datenbank vorhanden ist. Daher gibt es keinen Primärschlüssel oder Index. Da die Ansicht keine Zeilen und Spalten enthält, handelt es sich im Wesentlichen um eine Anweisung Anweisung, die die Ansicht generiert, und dann eine Abfrage basierend auf Ansichten.
Die Betriebsumgebung dieses Tutorials: Windows10-System, MySQL8.0.22-Version, Dell G3-Computer.
Die Ansicht ist eine virtuelle Tabelle und existiert nicht wirklich in der Datenbank, daher gibt es keinen Primärschlüssel oder Index, da keine Zeilen und Spalten vorhanden sind Wenn Sie eine Ansicht aufrufen, sucht das Datenbankverwaltungssystem zunächst nach der in der Ansicht gekapselten Anweisung, führt dann die Anweisung aus, die die Ansicht generiert, und fragt dann basierend auf der Ansicht ab Indizes in Ansichten, noch können Sie Trigger verwenden (Indizes und Trigger werden später analysiert)
Es kann mit gewöhnlichen Tabellen verwendet werden. Es ist erlaubt, eine SQL-Anweisung zu bearbeiten, die eine Ansicht und eine gewöhnliche Tabelle verbindet.
In Bezug auf die Verwendung von Ansichten zum Aktualisieren von Daten (Hinzufügen, Löschen, Ändern) werden diese Vorgänge direkt auf normale Tabellen angewendet, da die Ansicht selbst keine Daten enthält. Allerdings können nicht alle Ansichten Aktualisierungsvorgänge ausführen, z. B. in Ansichten. Falls vorhanden Gruppieren nach, Join, Unterabfrage, Vereinigung (Unoin), Aggregatfunktion (Summe/Anzahl usw.), berechnetes Feld, DISTINCT usw. Die Ansicht kann nicht aktualisiert werden, daher kann unser vorheriges Beispiel nicht aktualisiert werden Die Ansicht wird für den Datenabruf stärker aktualisiert, sodass Sie nicht zu sehr auf die Aktualisierung eingehen müssen.
Das Wesen von Ansichten
Die Erstellung und Verwendung von Ansichten ist jetzt relativ klar. Wir haben bereits wiederholt gesagt, dass eine Ansicht jedes Mal eine virtuelle Tabelle ist Beim Abfragen ruft es lediglich dynamisch Daten aus gewöhnlichen Tabellen ab und kombiniert sie, sieht aber wie eine Tabelle aus. Das Prinzip wird aus der folgenden Abbildung deutlich:
Tatsächlich werden Ansichten manchmal auch verwendet, um die Abfragevorgänge von Benutzern für normale Tabellen einzuschränken. Für solche Benutzer werden nur die ausgewählten Betriebsberechtigungen der entsprechenden Ansichten erteilt, sodass diese zulässig sind um nur Daten aus einer bestimmten Zeile oder Spalte zu lesen. Auf diese Weise müssen wir die Datenbankberechtigungseinstellungen nicht direkt verwenden, um das Lesen von Zeilen und Spalten einzuschränken, und vermeiden gleichzeitig die Mühe der Berechtigungsverfeinerung.
Empfohlenes Lernen:
MySQL-Video-TutorialDas obige ist der detaillierte Inhalt vonHat die MySQL-Ansicht einen Index?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!