Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Datenbanken erstellen » Mit Datenbankobjekten arbeiten » Mit materialisierten Ansichten arbeiten

 

Manuelle Ansichten aktualisieren

Manuelle Ansichten veralten, wenn Änderungen an ihren darunterliegenden Basistabellen auftreten. Ein Aktualisieren einer manuellen Ansicht bedeutet, dass der Datenbankserver die Abfragedefinition für die Ansicht wieder ausführt und die Ansichtsdaten durch die neue Ergebnismenge der Abfrage ersetzt. Das Aktualisieren macht die Ansichtsdaten mit den Basisdaten konsistent. Sie sollten eine akzeptable Grenze in Bezug auf die Veralterung der Daten für die manuelle Ansicht festlegen und eine Aktualisierungsstrategie entwerfen. Ihre Strategie sollte die Zeit berücksichtigen, die für die Durchführung einer Aktualisierung benötigt wird, weil die Ansicht während des Aktualisierungsvorgangs für Abfragen nicht verfügbar ist.

Sie können auch eine Strategie einsetzen, bei der die Ansicht unter Verwendung von Ereignissen aktualisiert wird. Sie können beispielsweise ein Ereignis erstellen, das die Aktualisierung in regulären Intervallen durchführt.

Sofortansichten müssen nicht aktualisiert werden, außer sie sind nicht-initialisiert (enthalten keine Daten), wie z.B. nach einer Kürzung.

Sie können auch die Systemprozedur sa_refresh_materialized_views verwenden, um Ansichten zu aktualisieren. Weitere Hinweise finden Sie unter sa_refresh_materialized_views-Systemprozedur.

Mit der Datenbankoption "materialized_view_optimization" können Sie einen Veraltungsschwellenwert konfigurieren, jenseits dessen der Optimierer die materialisierte Ansicht beim Verarbeiten von Abfragen nicht benutzt. Weitere Hinweise finden Sie unter Veraltungsschwellenwert des Optimierers für materialisierte Ansichten einstellen.

Wenn Sie die Anweisung REFRESH MATERIALIZED VIEW verwenden, können Sie die Isolationsstufe der Verbindung aufheben, indem Sie die WITH ISOLATION LEVEL-Klausel benutzen. Weitere Hinweise darüber, wie Sie beim Aktualisieren einer materialisierten Ansicht den Mehrbenutzerbetrieb steuern, finden Sie unter der WITH-Klausel der REFRESH MATERIALIZED VIEW-Anweisung.

Upgrade von Datenbanken mit materialisierten Ansichten

Es empfiehlt sich, materialisierte Ansichten zu aktualisieren, nachdem Sie ein Upgrade des Datenbankservers durchgeführt oder die Datenbank neu aufgebaut bzw. umgestellt haben.

♦  So aktualisieren Sie eine manuelle Ansicht (Sybase Central)
  1. Verbinden Sie sich als Benutzer mit DBA-Berechtigung mit der Datenbank oder als Benutzer mit INSERT-Berechtigung für die materialisierte Ansicht. Sie müssen auch SELECT-Berechtigungen für die Basistabellen haben.

  2. Doppelklicken Sie im linken Fensterausschnitt auf Ansichten.

  3. Rechtsklicken Sie auf eine materialisierte Ansicht und wählen Sie Daten aktualisieren.

  4. Wählen Sie eine Isolationsstufe und klicken Sie auf OK.

♦  So aktualisieren Sie eine manuelle Ansicht (SQL)
  1. Verbinden Sie sich als Benutzer mit DBA-Berechtigung mit der Datenbank oder als Benutzer mit INSERT-Berechtigung für die materialisierte Ansicht. Sie müssen auch SELECT-Berechtigungen für die Basistabellen haben.

  2. Führen Sie die Anweisung REFRESH MATERIALIZED VIEW aus.

Beispiel

Die folgende Anweisung erstellt und aktualisiert die materialisierte Ansicht EmployeeConfid33.

CREATE MATERIALIZED VIEW EmployeeConfid33 AS
   SELECT EmployeeID, Employees.DepartmentID, SocialSecurityNumber, Salary, ManagerID,
      Departments.DepartmentName, Departments.DepartmentHeadID
   FROM Employees, Departments
   WHERE Employees.DepartmentID=Departments.DepartmentID;
REFRESH MATERIALIZED VIEW EmployeeConfid33;
Achtung

Wenn Sie dieses Beispiel durchgeführt haben, löschen Sie die von Ihnen erstellte materialisierte Ansicht. Andernfalls können Sie keine Schemaänderungen an ihren Basistabellen Employees und Departments durchführen, wenn Sie andere Beispiele ausprobieren. Sie können das Schema einer Tabelle nicht ändern, die aktivierte, materialisierte Ansichten haben. Weitere Hinweise finden Sie unter Materialisierte Ansichten löschen.

Siehe auch