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

 

Materialisierte Ansichten aktivieren und deaktivieren

Sie können kontrollieren, ob eine materialisierte Ansicht für die Verwendung durch den Datenbankserver verfügbar ist, indem Sie sie aktivieren oder deaktivieren. Eine deaktivierte materialisierte Ansicht wird auch vom Optimierer während der Optimierung nicht berücksichtigt. Wenn eine Abfrage ausdrücklich eine deaktivierte materialisierte Ansicht referenziert, schlägt die Abfrage fehl und es wird ein Fehler gemeldet. Wenn Sie eine materialisierte Ansicht deaktivieren, löscht der Datenbankserver die Daten der Ansicht, behält die Definition jedoch in der Datenbank. Wenn Sie eine materialisierte Ansicht wieder aktivieren, befindet sie sich im nicht initialisierten Zustand, und Sie müssen sie aktualisieren, um sie mit Daten zu füllen.

Reguläre Ansichten, die von einer materialisierten Ansicht abhängig sind, werden automatisch vom Datenbankserver deaktiviert, wenn die materialisierte Ansicht deaktiviert wird. Daher müssen Sie, wenn Sie eine materialisierte Ansicht wieder aktivieren, auch alle abhängigen Ansichten wieder aktivieren. Aus diesem Grund sollten Sie die Liste der Ansichten abrufen, die von der materialisierten Ansicht abhängig sind, bevor Sie diese deaktivieren. Sie können dazu die Systemprozedur "sa_dependent_views" verwenden. Dieses Prozedur prüft die Systemtabelle ISYSDEPENDENCY und liefert eine Liste der abhängigen Ansichten, falls vorhanden.

Wenn Sie eine materialisierte Ansicht deaktivieren, werden die Daten und Indizes gelöscht, und wenn die Ansicht eine Sofortansicht war, wird sie in eine manuelle Ansicht geändert. Wenn Sie sie wieder aktivieren, müssen Sie sie aktualisieren, die Indizes neu erstellen und sie gegebenenfalls wieder in eine Sofortansicht umwandeln.

Sie können Berechtigungen für deaktivierte Objekte erteilen. Berechtigungen für deaktivierte Objekte werden in der Datenbank gespeichert und werden wirksam, wenn das Objekt aktiviert wird.

♦  So deaktivieren Sie eine materialisierte Ansicht (Sybase Central)
  1. Verbinden Sie sich als Benutzer mit DBA-Berechtigung oder als Eigentümer der materialisierten Ansicht.

  2. Doppelklicken Sie im linken Fensterausschnitt auf Ansichten.

  3. Rechtsklicken Sie auf die materialisierte Ansicht und wählen Sie Deaktivieren.

♦  So deaktivieren Sie eine materialisierte Ansicht (SQL)
  1. Verbinden Sie sich als Benutzer mit DBA-Berechtigung oder als Eigentümer der materialisierten Ansicht.

  2. Führen Sie die Anweisung ALTER MATERIALIZED VIEW ... DISABLE aus.

Beispiel

Das folgende Beispiel erstellt die materialisierte Ansicht EmployeeConfid55, initialisiert sie und deaktiviert sie dann. Wenn sie deaktiviert ist, werden die Daten für die materialisierte Ansicht gelöscht, die Definition der materialisierten Ansicht verbleibt in der Datenbank, die materialisierte Ansicht steht für die Verwendung durch den Datenbankserver nicht zur Verfügung, und falls abhängige Ansichten vorhanden sind, werden sie deaktiviert.

CREATE MATERIALIZED VIEW EmployeeConfid55 AS
   SELECT EmployeeID, Employees.DepartmentID, SocialSecurityNumber, Salary, ManagerID,
      Departments.DepartmentName, Departments.DepartmentHeadID
   FROM Employees, Departments
   WHERE Employees.DepartmentID=Departments.DepartmentID;
REFRESH MATERIALIZED VIEW EmployeeConfid55;
ALTER MATERIALIZED VIEW EmployeeConfid55 DISABLE;
♦  So aktivieren Sie eine materialisierte Ansicht (Sybase Central)
  1. Verbinden Sie sich als Benutzer mit DBA-Berechtigung oder als Eigentümer der materialisierten Ansicht.

  2. Doppelklicken Sie im linken Fensterausschnitt auf Ansichten.

  3. Rechtsklicken Sie auf die materialisierte Ansicht und wählen Sie Neukompilieren und aktivieren.

  4. Optional rechtsklicken Sie auf die Ansicht und wählen Daten aktualisieren, um die Ansicht zu initialisieren und sie mit Daten zu füllen.

♦  So aktivieren Sie eine materialisierte Ansicht (SQL)
  1. Verbinden Sie sich als Benutzer mit DBA-Berechtigung oder als Eigentümer der materialisierten Ansicht.

  2. Führen Sie die Anweisung ALTER MATERIALIZED VIEW ... ENABLE aus.

  3. Führen Sie optional REFRESH MATERIALIZED VIEW aus, um die Ansicht zu initialisieren und mit Daten zu füllen.

Beispiel

Die beiden folgenden Anweisungen reaktivieren die materialisierte Ansicht EmployeeConfid55 und füllen Sie dann mit Daten.

ALTER MATERIALIZED VIEW EmployeeConfid55 ENABLE;
REFRESH MATERIALIZED VIEW EmployeeConfid55;
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