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 12 - Änderungen und Upgrades » Neue Funktionen in Version 10.0.0 » SQL Anywhere » Neue Funktionen

 

SQL-Anweisungen

Im Folgenden sind eine Reihe neuer SQL-Anweisungen sowie neue Erweiterungen der vorhandenen SQL-Anweisungssyntax aufgelistet. Diese neuen Funktionen ergänzen die Anweisungsänderungen, die in den vorangehenden Abschnitten dieses Dokuments zu den Funktionsänderungen beschrieben sind.

  • SQL-Anweisungen zur Unterstützung materialisierter Ansichten   Die folgenden SQL-Anweisungen wurden hinzugefügt oder ihre Syntax und Funktionalität wurden erweitert, um materialisierte Ansichten zu unterstützen:

    Die neue Klausel OPTION in der SELECT-Anweisung kann verwendet werden, um die Datenbankoption materialized_view_optimization aufzuheben. Siehe SELECT-Anweisung.

  • Neue SQL-Anweisungen zur Unterstützung von Diagnoseprotokollierung und Anwendungsprofilerstellung   Im Folgenden sind die neuen SQL-Anweisungen zur Unterstützung der Anwendungsprofilerstellung aufgelistet:

  • Neue Anweisung VALIDATE DATABASE   Sie können nun die Datenbank mit der Anweisung VALIDATE DATABASE validieren. Siehe VALIDATE-Anweisung.

  • Neue Anweisung VALIDATE MATERIALIZED VIEW   Sie können nun materialisierte Ansichten mit der Anweisung VALIDATE MATERIALIZED VIEW validieren. Siehe VALIDATE-Anweisung.

  • Neue Anweisung ALTER STATISTICS   Sie können nun mit der Anweisung ALTER STATISTICS steuern, ob Spaltenstatistiken automatisch aktualisiert werden. Sie können weiterhin mit einer expliziten CREATE STATISTICS- oder DROP STATISTICS-Anweisung eine Aktualisierung der Statistiken für Spalten erzwingen, für die die automatische Aktualisierung deaktiviert wurde. Siehe ALTER STATISTICS-Anweisung.

  • Erweiterung der Anweisung ALTER INDEX   Sie können nun einen Index mit der REBUILD-Klausel der Anweisung ALTER INDEX neu erstellen. Siehe ALTER INDEX-Anweisung.

  • Erweiterungen der Anweisungen ALTER TABLE und CREATE TABLE   Sie können nun mit der MATCH-Klausel besser steuern, wann eine Übereinstimmung zwischen einem Fremdschlüssel in einer referenzierenden Tabelle und dem Primärschlüssel in der referenzierten Tabelle vorliegt. Sie können auch einen Fremdschlüssel als eindeutig deklarieren und somit vermeiden, die Eindeutigkeit separat zu deklarieren. Siehe CREATE TABLE-Anweisung und ALTER TABLE-Anweisung.

  • Neue Klausel CALIBRATE PARALLEL READ für die Anweisung ALTER DATABASE   Mit der neuen Klausel CALIBRATE PARALLEL READ der Anweisung ALTER DATABASE können Sie Hardware erkennen, die parallele Ein- und Ausgabe verarbeiten kann. Sie können das Kalibrierungsergebnis für einen DBSpace abrufen, indem Sie die neue erweiterte Datenbankeigenschaft IOParallelism mit der Funktion DB_EXTENDED_PROPERTY abfragen. Siehe ALTER DATABASE-Anweisung und Datenbankeigenschaften.

  • Neue Klausel PRIMARY KEY ON für die Anweisung COMMENT   Sie können nun mit der Klausel PRIMARY KEY ON der Anweisung COMMENT Bemerkungen für Primärschlüssel erstellen. Siehe COMMENT-Anweisung.

  • Erweiterung der Anweisung CREATE ENCRYPTED FILE zum Ändern von Chiffrierschlüsseln   Mit den Erweiterungen der Anweisung CREATE ENCRYPTED FILE können Sie nun den Chiffrierschlüssel zum Verschlüsseln einer Datenbank, eines Transaktionslogs oder eines DBSpace ändern, ohne die Datenbank zu entladen und neu zu laden. Wenn die Datenbank nicht verschlüsselt, aber die Tabellenverschlüsselung aktiviert ist, können Sie mit der Anweisung CREATE ENCRYPTED FILE den Schlüssel für die Tabellenverschlüsselung ändern. Siehe CREATE ENCRYPTED FILE-Anweisung.

  • Erweiterungen der Anweisung CREATE DATABASE   Die drei neuen Klauseln ENCODING, NCHAR COLLATION und ACCENT wurden hinzugefügt, um die Verarbeitung von Zeichensätzen zu verbessern. Außerdem wurde die Klausel DATABASE SIZE hinzugefügt, sodass Sie die Ausgangsgröße einer Datenbank festlegen können. Siehe CREATE DATABASE-Anweisung.

  • Erweiterungen der SELECT-Anweisung   Die FOR UPDATE-Klausel, die beim Aktualisieren von Zeilen über einen Cursor verwendet wird, wurde erweitert. Es ist nun möglich, mit einer nachfolgenden UPDATE-Anweisung einzugrenzen, welche Spalten in einer Spaltenliste geändert werden können. Siehe SELECT-Anweisung.

    Die FROM-Klausel einer SELECT-Anweisung wurde erweitert und unterstützt nun den Tabellen-Hint READPAST, der den Datenbankserver anweist, gesperrte Zeilen zu ignorieren, sowie den Tabellen-Hint UPDLOCK, der sich ähnlich wie XLOCK verhält. Siehe FROM-Klausel.

    Die SELECT-Anweisung wurde erweitert und unterstützt nun eine OPTION-Klausel zur Steuerung von Aspekten der Abfrageoptimierung für die betreffende Anweisung. Die OPTION-Klausel umfasst Syntax zum Steuern der Übereinstimmung von materialisierten Ansichten über die Klausel MATERIALIZED VIEW OPTIMIZATION für die betreffende SELECT-Anweisung. Die Klausel FORCE OPTIMIZATION weist darüber hinaus den Datenbankserver an, eine Abfrageoptimierung auszuführen, selbst wenn für die Abfrage die kostenbasierte Optimierung umgangen werden könnte. Siehe SELECT-Anweisung.

  • Erweiterungen der Anweisungen LOAD TABLE und UNLOAD TABLE   Die STRIP-Klausel für die LOAD TABLE-Anweisung akzeptiert nun Optionen, mit denen Sie festlegen können, ob führende Leerzeichen aus Werten, die nicht zwischen Anführungszeichen gesetzt sind, vor dem Einfügen entfernt werden. Mit weiteren STRIP-Optionen können Sie genauer festlegen, wie die Daten aufbereitet werden sollen.

    Die Anweisung LOAD TABLE wurde ebenfalls erweitert und unterstützt nun die Option COMMENTS INTRODUCED BY. Mit dieser Option können Sie die Zeichenfolge festlegen, mit der Kommentare in den Eingabedaten gekennzeichnet werden. Alle eingegebenen Zeilen, die mit der angegebenen Zeichenfolge beginnen, werden während des Ladevorgangs ignoriert.

    Sowohl die LOAD TABLE-Anweisung als auch die UNLOAD TABLE-Anweisung wurden erweitert und unterstützen nun die folgenden Optionen:

    • ENCODING-Option   Mit dieser Option können Sie die Kodierung festlegen, die beim Laden und Entladen von Daten verwendet wird.

    • ROW DELIMITED BY-Option   Mit dieser Option können Sie die Zeichenfolge festlegen, die das Ende eines Eingabedatensatzes beim Massenimport oder -export von Daten angibt.

    • QUOTE-Option   Diese Option ist ähnlich der QUOTE-Option für die Anweisung OUTPUT in Interactive SQL. Siehe OUTPUT-Anweisung [Interactive SQL].

    Siehe LOAD TABLE-Anweisung und UNLOAD-Anweisung.

  • Erweiterungen der Anweisung VALIDATE INDEX   Die Syntax für VALIDATE INDEX wurde erweitert und unterstützt nun Indexangaben. Siehe VALIDATE-Anweisung.

  • Erweiterungen der Anweisung ALTER INDEX zur Umbenennung von Primärschlüsseln   Sie können nun Primärschlüssel mit der Anweisung ALTER INDEX umbenennen. Siehe ALTER INDEX-Anweisung.

  • Neue CONTINUE-Anweisung   Verwenden Sie diese Anweisung, um eine Schleife neu zu starten. Anweisungen in der Schleife, die der CONTINUE-Anweisung folgen, werden übersprungen. Siehe CONTINUE-Anweisung.

  • Neue BREAK-Anweisung [T-SQL]   Mit dieser Anweisung verlassen Sie eine zusammengesetzte Anweisung oder eine Schleife. Siehe BREAK-Anweisung [T-SQL].

  • Erweiterung der INSERT-Anweisung zur Aktualisierung der Standardwerte während eines INSERT-Vorgangs   Sie können mit der Klausel DEFAULTS ON | OFF steuern, ob Standardwerte während eines INSERT-Vorgangs aktualisiert werden, wenn eine Zeile bereits vorhanden ist. Diese neue Funktion kann nicht auf die Standardfelder DEFAULT TIMESTAMP, DEFAULT UTC TIMESTAMP und DEFAULT LAST USER angewendet werden, da diese Felder immer aktualisiert werden. Siehe INSERT-Anweisung.

  • Erweiterung der DELETE-Anweisung zur Unterstützung einer ORDER BY-Klausel   Die DELETE-Anweisung unterstützt nun die ORDER BY-Klausel, mit der Sie die Reihenfolge festlegen können, in der Zeilen aus der Datenbank gelöscht werden. Siehe DELETE-Anweisung.

  • Erweiterungen der START DATABASE-Anweisung   Die Anweisung START DATABASE gibt nun einen größeren Umfang an Fehlermeldungen zurück, wenn die Anweisung nicht angeben kann, aus welchem Grund die Datenbank nicht gestartet werden konnte. Außerdem können die START DATABASE-Klauseln nun in einer beliebigen Reihenfolge angegeben werden. Siehe START DATABASE-Anweisung.

  • Erweiterung der MESSAGE-Anweisung, um die Protokollierung nur im Ereignislog oder im Systemlog zu unterstützen   Sie können die Protokollierung nicht nur aktivieren und deaktivieren, sondern auch festlegen, ob nur im Ereignislog oder im Systemlog protokolliert werden soll. Die Syntax für die MESSAGE-Anweisung wurde erweitert und erlaubt nun die optionale Klausel [ EVENT | SYSTEM ] innerhalb der TO LOG-Klausel. TO EVENT LOG bewirkt z.B., dass nur im Ereignislog protokolliert wird. Siehe MESSAGE-Anweisung.

  • FOR OLAP WORKLOAD-Option   Die Syntax für die Anweisungen CREATE INDEX, CREATE TABLE und ALTER TABLE wurde erweitert und unterstützt nun die Option FOR OLAP WORKLOAD in der Fremdschlüsseldefinition. Diese Option weist den Datenbankserver an, bestimmte Optimierungen vorzunehmen, und sammelt Statistikdaten über den Schlüssel, um die OLAP-Performance zu steigern. Siehe CREATE INDEX-Anweisung, CREATE TABLE-Anweisung, ALTER TABLE-Anweisung und ClusteredHashGroupBy-Algorithmus (GrByHClust).

  • Unterstützung für temporäre gespeicherte Prozeduren   Sie können nun mit einer Erweiterung der Anweisung CREATE PROCEDURE temporäre gespeicherte Prozeduren erstellen. Temporäre gespeicherte Prozeduren sind nur für die Verbindung sichtbar, die sie erstellt hat. Sie werden automatisch gelöscht, wenn die Verbindung getrennt wird. Siehe CREATE PROCEDURE-Anweisung (Webclients).

  • Unterstützung lokaler temporärer Tabellen   Sie können nun mit der Anweisung CREATE LOCAL TEMPORARY TABLE lokale temporäre Tabellen erstellen. Auf diese Weise erstellte lokale temporäre Tabellen werden gelöscht, wenn die Verbindung getrennt wird. Siehe CREATE LOCAL TEMPORARY TABLE-Anweisung.

  • Erweiterungen temporärer Tabellen   Sie können nun mit der SHARE BY ALL-Klausel der Anweisung CREATE GLOBAL TEMPORARY TABLE globale temporäre Tabellen erstellen, deren Daten von allen Verbindungen einer Datenbank gemeinsam verwendet werden können. Siehe CREATE TABLE-Anweisung.