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 » Transaktionen und Isolationsstufen verwenden » Isolationsstufen und Konsistenz

 

Isolationsstufe festlegen

Jede Verbindung zur Datenbank hat ihre eigene Isolationsstufe. Zusätzlich kann die Datenbank für jeden Benutzer oder jede Gruppe eine Standardisolationsstufe speichern. Mit der PUBLIC-Einstellung für die Datenbankoption "isolation_level" können Sie eine einzelne Standardisolationsstufe für die gesamte Datenbankgruppe festlegen.

Sie können auch die Isolationsstufe mit Tabellen-Hints setzen, aber dies ist eine erweiterte Funktion, die nur bei Bedarf verwendet werden soll. Weitere Informationen finden Sie im Abschnitt zum WITH Tabellen_Hint unter FROM-Klausel.

Sie können die Isolation Ihrer Verbindung und die der Benutzer-ID zugeordneten Standardstufe verändern, indem Sie den SET OPTION-Befehl verwenden. Wenn Sie die Berechtigung haben, können Sie auch die Isolationsstufen für andere Benutzer oder Gruppen verändern.

Wenn Sie die Snapshot-Isolation verwenden möchten, müssen Sie zunächst die Snapshot-Isolation für die Datenbank aktivieren.

Informationen über das Aktivieren und Einstellen von Snapshot-Isolationsstufen finden Sie unter Snapshot-Isolation aktivieren.

♦  So stellen Sie die Isolationsstufe für den aktuellen Benutzer ein
♦  So stellen Sie die Isolationsstufe für einen Benutzer oder eine Gruppe ein
  1. Verbinden Sie sich als Benutzer mit DBA-Berechtigung mit der Datenbank.

  2. Führen Sie die Anweisung SET OPTION aus und fügen Sie vor "isolation_level" den Namen der Gruppe und einen Punkt ein. Der folgende Befehl stellt zum Beispiel die Standardisolation für die Gruppe PUBLIC auf 3.

    SET OPTION PUBLIC.isolation_level = 3;
♦  So stellen Sie die Isolationsstufe nur für die aktuelle Verbindung ein
Standardisolationsstufe

Wenn Sie mit einer Datenbank verbunden sind, bestimmt der Datenbankserver Ihre anfängliche Isolationsstufe wie folgt:

  1. Eine Standardisolationsstufe kann für jeden Benutzer und jede Gruppe eingestellt werden. Wenn in der Datenbank eine Stufe für Ihre Benutzer-ID gespeichert ist, dann wird sie vom Datenbankserver verwendet.

  2. Falls nicht, überprüft der Datenbankserver die Gruppen, zu denen Sie gehören, bis er eine Stufe findet. Alle Benutzer sind Mitglieder der speziellen Gruppe PUBLIC. Wenn vorher keine anderen Einstellungen gefunden werden, verwendet SQL Anywhere die der Gruppe zugeordnete Stufe.

Weitere Hinweise zu Benutzern und Gruppen finden Sie unter Benutzer-IDs und Berechtigungen verwalten.

Weitere Hinweise zur SET OPTION-Anweisung finden Sie unter SET OPTION-Anweisung.

Es kann sinnvoll sein, während einer Transaktion die Isolationsstufe zu ändern, wenn beispielsweise eine Tabelle oder mehrere Tabellen einen serialisierten Zugriff erfordern. Hinweise über das Ändern der Isolationsstufe innerhalb einer Transaktion finden Sie unter Isolationsstufen während einer Transaktion ändern.