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

SQL Anywhere 12.0.0 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Mit Datenbankobjekten arbeiten » Mit Ansichten arbeiten » Ansichtenabhängigkeiten

 

Abhängigkeiten und Vorgänge, die ein Schema ändern

Für den Versuch, das für eine Tabelle oder eine Ansicht definierte Schema zu ändern, ist es erforderlich, dass der Datenbankserver prüft, ob es abhängige Ansichten gibt, die von der Änderung berührt werden. Nachfolgend finden Sie Beispiele von Vorgängen, die ein Schema ändern:

  • Löschen einer Tabelle, Ansicht, materialisierten Ansicht oder Spalte

  • Umbenennen einer Tabelle, Ansicht, materialisierten Ansicht oder Spalte

  • Hinzufügen, Löschen oder Ändern von Spalten

  • Ändern des Datentyps, der Größe oder der Nullwertfähigkeit einer Spalte

  • Deaktivieren von Ansichten oder Abhängigkeiten von Tabellenansichten

Wenn Sie versuchen, einen Vorgang durchzuführen, der ein Schema ändert, geschieht Folgendes:

  1. Der Datenbankserver erstellt eine Liste von Ansichten, die direkt oder indirekt von der zu ändernden Tabelle oder Ansicht abhängen. Ansichten mit dem Status DEAKTIVIERT werden ignoriert.

    Falls es unter den abhängigen Ansichten materialisierte Ansichten gibt, schlägt die Anforderung fehl, ein Fehler wird gemeldet und die noch ausstehenden Ereignisse geschehen nicht. Sie müssen abhängige materialisierte Ansichten explizit deaktivieren, bevor Sie mit dem Schema-Änderungsvorgang fortfahren können. Siehe Materialisierte Ansichten aktivieren und deaktivieren.

  2. Der Datenbankserver setzt exklusive Schemasperren für das zu ändernde Objekt und für alle abhängigen regulären Ansichten.

  3. Der Datenbankserver setzt den Status aller abhängigen regulären Ansichten auf UNGÜLTIG.

  4. Der Datenbankserver führt den Vorgang durch, der das Schema ändert. Falls der Vorgang fehlschlägt, werden die Sperren freigegeben, der Status der abhängigen regulären Ansichten wird auf GÜLTIG zurückgesetzt, ein Fehler wird gemeldet und der folgende Schritt wird nicht durchgeführt.

  5. Der Datenbankserver kompiliert die abhängigen regulären Ansichten neu und setzt den Status jeder Ansicht auf GÜLTIG, wenn die Kompilation erfolgreich war. Falls die Kompilation für eine reguläre Ansicht fehlschlägt, bleibt der Status für diese Ansicht auf UNGÜLTIG gesetzt. Nachfolgende Anforderungen für eine reguläre Ansicht mit dem Status UNGÜLTIG führen dazu, dass der Datenbankserver eine erneute Kompilation der Ansicht versucht. Falls weitere Versuche fehlschlagen, ist wahrscheinlich eine Änderung der ungültigen Ansicht oder eines Objektes erforderlich, von dem die Ansicht abhängig ist.

 Abhängigkeiten und Vorgänge, die ein Schema ändern (reguläre Ansichten)
 Abhängigkeiten und Vorgänge, die ein Schema ändern (materialisierte Ansichten)