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 11 - Änderungen und Upgrades » Neue Funktionen in Version 9.0.0 » Neue Funktionen in Version 9.0.0

 

Neue Funktionen von Adaptive Server Anywhere

Dieser Abschnitt enthält eine Einführung in die neuen Funktionen von Adaptive Server Anywhere Version 9.0.0. Desweiteren finden Sie hier eine umfangreiche Liste größerer und kleinerer Neuerungen sowie Querverweise zu den Stellen, an denen die neuen Funktionen detailliert besprochen werden.

Zusammenfassung der neuen Funktionen
  • XML-Unterstützung   Adaptive Server Anywhere 9.0.0 bietet eine breite Unterstützung für XML, wie etwa das Speichern von XML-Dokumenten, das Exportieren relationaler Daten als XML, das Importieren von XML und die Rückgabe von XML aus Abfragen zu relationalen Daten.

    • FOR XML-Klausel   Die SELECT-Anweisung unterstützt eine FOR XML-Klausel mit den drei Modi RAW, AUTO und EXPLICIT, die es Ihnen ermöglichen, Abfrageergebnisse in Form eines XML-Dokuments zu erzeugen. Jeder Modus bietet Ihnen eine unterschiedliche Stufe der Kontrolle über das betreffende Format.

      Weitere Hinweise finden Sie unter Abfrageergebnisse als XML erhalten und SELECT-Anweisung.

    • for_xml_null_treatment-Option   Mit der Option for_xml_null_treatment können Sie steuern, wie NULL von einer Abfrage zurückgegeben wird, die die FOR XML-Klausel enthält.

      Weitere Hinweise finden Sie unter for_xml_null_treatment-Option [Datenbank].

    • openxml-Prozedur   Weitere Hinweise finden Sie unter openxml-Systemprozedur.

    • SQL/XML-Unterstützung   SQL/XML ist ein Standardentwurf, der beschreibt, auf welche Weise SQL in Verbindung mit XML verwendet werden kann. Als Teil der SQL/XML-Unterstützung, umfasst Adaptive Server Anywhere einen XML-Datentyp, der zum Speichern von XML-Dokumenten in der Datenbank verwendet werden kann.

      Weitere Hinweise finden Sie unter XML-Datentyp.

      Adaptive Server Anywhere unterstützt außerdem folgende SQL/XML-Funktionen, die eine Alternative zur FOR XML-Klausel für die Erzeugung von XML-Daten aus Ihren relationalen Daten bieten:

      • XMLAGG-Funktion   Diese Aggregatfunktion erzeugt aus einer Sammlung von XML-Elementen eine XML-Elementstruktur.

        Weitere Hinweise finden Sie unter XMLAGG-Funktion [Aggregat].

      • XMLCONCAT-Funktion   Diese Funktion erzeugt durch die Verkettung der XML-Werte, die ihr übergeben werden, eine XML-Elementstruktur.

        Weitere Hinweise finden Sie unter XMLCONCAT-Funktion [Zeichenfolge].

      • XMLELEMENT-Funktion   Diese Funktion erzeugt ein XML-Element, für das Sie optional den Elementinhalt, die Attribute und den Attributinhalt festlegen können.

        Weitere Hinweise finden Sie unter XMLELEMENT-Funktion [Zeichenfolge].

      • XMLFOREST-Funktion   Diese Funktion erzeugt eine XML-Elementstruktur.

        Weitere Hinweise finden Sie unter XMLFOREST-Funktion [Zeichenfolge].

      • XMLGEN-Funktion   Diese Funktion erzeugt basierend auf einem XQuery-Konstruktor einen XML-Wert.

        Weitere Hinweise finden Sie unter XMLGEN-Funktion [Zeichenfolge].

  • HTTP-Server in der Datenbank   Adaptive Server Anywhere-Datenbankserver können nun als Webserver agieren. Dies ermöglicht es Ihnen, webbasierte Anwendungen unter Verwendung von lediglich einer Adaptive Server Anywhere-Datenbank und einem Webbrowser Ihrer Wahl zu schreiben und auszuführen.

    Diese Funktion gestattet es dem Datenbankserver, Standard-HTTP- und HTTPS-Anforderungen sowie Standard-SOAP-Anforderungen zu bearbeiten. Die verfügbaren Diensttypen sind HTTP, HTTPS, XML, RAW, SOAP und DISH. Bei DISH handelt es sich um eine SOAP-Dienst-Verarbeitungsroutine.

    Um die Vorteile dieser Erweiterung für Datenbanken zu nutzen, die mit älteren Versionen erstellt wurden, müssen Sie die Datenbank mit dem Dienstprogramm Upgrade auf die neue Version umstellen.

    Weitere Hinweise finden Sie unter SQL Anywhere-Webdienste.

  • Indexberater   Der Indexberater leitet Sie bei der richtigen Auswahl von Indizes. Er analysiert entweder eine einzelne Abfrage oder eine Gruppe von Vorgängen und empfiehlt, welche Indizes Sie zu Ihrer Datenbank hinzufügen bzw. aus der Datenbank entfernen sollten.

    Um die Vorteile dieser Erweiterung für Datenbanken zu nutzen, die mit älteren Versionen erstellt wurden, müssen Sie die Datenbank mit dem Dienstprogramm Upgrade auf die neue Version umstellen.

    Weitere Hinweise finden Sie unter Indexberater.

  • 64-Bit-Version verfügbar   Für Windows Server 2003 auf Itanium II-Chips ist eine vollständige 64-Bit-Version der Software verfügbar. Für 64-Bit-Linux- und HP-UX-Betriebssysteme ist eine Deployment-Version verfügbar.

SQL-Erweiterungen
  • WITH-Klausel kann nun vor Select zur Festlegung häufiger Tabellenausdrücke verwendet werden   Häufige Tabellenausdrücke sind temporäre Ansichtsdefinitionen, die nur innerhalb des Bereichs einer SELECT-Anweisung vorhanden sind. Sie können rekursiv oder nicht-rekursiv sein. In manchen Fällen können Abfragen mit ihnen auf elegantere Weise geschrieben werden. Sie gestatten es Ihnen auch, mehrere Stufen von Aggregatfunktionen innerhalb einer einzelnen Abfrage zu erstellen. Sie können nur in einer SELECT-Anweisung auf höchster Ebene verwendet werden, innerhalb der SELECT-Anweisung auf höchster Ebene in einer Ansichtsdefinition oder innerhalb der Anweisung auf höchster Ebene in einer INSERT-Anweisung.

    Weitere Hinweise finden Sie unter Allgemeine Tabellenausdrücke.

  • Rekursive Vereinigungsabfragen sind nun mit einem gewöhnlichen Tabellenausdruck einer bestimmte Form ausführbar   Rekursive Tabellenausdrücke ermöglichen nun die Erstellung rekursiver Abfragen. Diese sind besonders bei der Abfrage von Tabellen nützlich, die hierarchische Datenstrukturen oder gezielte Graphen repräsentieren. Jeder rekursive gewöhnliche Tabellenausdruck enthält eine Ausgangsunterabfrage, die zuerst ausgeführt wird, und eine rekursive Unterabfrage. Die Referenz der Ansicht, die in der FROM-Klausel der rekursiven Unterabfrage enthalten sein muss, referenziert die Zeilen, die der Ansicht während der vorherigen Wiederholung hinzugefügt wurden. Sie müssen besonders darauf achten, Bedingungen zu schaffen, die die Rekursion stoppt, wenn die abgefragte Datenstruktur Schleifen enthalten könnte.

    Weitere Hinweise finden Sie unter Rekursive allgemeine Tabellenausdrücke.

  • INTERSECT- und EXCEPT-Anweisungen werden nun unterstützt   Diese Anweisungen berechnen die Schnittmenge und den Unterschied zwischen zwei oder mehreren Ergebnismengen. Sie komplementieren die UNION-Anweisung.

    Weitere Hinweise finden Sie an folgenden Stellen:

  • SELECT-Anweisungen können Ergebnismengen gespeicherter Prozeduren bearbeiten   In SELECT-Anweisungen ist ein Aufruf einer gespeicherten Prozedur nun überall zulässig, wo eine Basistabelle oder Ansicht erlaubt ist.

    Wenn Sie Statistiken zu gespeicherten Prozeduraufrufen speichern wollen, müssen Sie die Datenbank mit dem Dienstprogramm Upgrade auf die neue Version umstellen. Ohne Statistiken erhalten Sie möglicherweise schlechte Pläne, wenn Sie versuchen, die Ergebnisse des Aufrufs einer gespeicherten Prozedur zu verknüpfen.

    Weitere Hinweise finden Sie unter FROM-Klausel.

  • Online-Funktionen für analytische Verarbeitung wurden hinzugefügt   Der zulässigen SQL-Sprache wurden mehrere OLAP-Funktionen hinzugefügt:

    • ROLLUP-Vorgang   Für Abfragen mit einer GROUP BY-Klausel fügt der ROLLUP-Vorgang Zeilen aus Teilergebnissen in die Ergebnismenge ein. Jede Zeile aus einem Teilergebnis stellt ein Aggregat für eine Gruppe von Zeilen in der GROUP BY-Ergebnismenge bereit.

      Weitere Hinweise finden Sie unter ROLLUP verwenden.

    • LIST-Funktion kann sortierte Listen enthalten   Die LIST-Funktion wurde erweitert, sodass sie sortierte Listen von Elementen bereitstellen kann.

      Weitere Hinweise finden Sie unter LIST-Funktion [Aggregat].

    • Zusätzliche Aggregatfunktionen   Es wurden Funktionen hinzugefügt, die stichprobenbasierte und populationsbasierte Standardabweichungen berechnen können.

      Weitere Hinweise finden Sie unter Aggregat-Funktionen.

  • CREATE INDEX-Anweisung gestattet die Indexerstellung mit integrierter Funktion   Diese Funktion bietet eine äußerst praktische Methode, eine neue berechnete Spalte zu einer Tabelle hinzuzufügen, und erstellt einen Index für die betreffende Spalte.

    Weitere Hinweise finden Sie unter CREATE INDEX-Anweisung und Indizes erstellen.

  • ORDER BY-Klausel ist in allen Kontexten zulässig   In früheren Versionen war die Verwendung der ORDER BY-Klausel in zahlreichen SELECT-Anweisungen in Ansichtsdefinitionen, Unterabfragen oder UNION-Anweisungen nicht zulässig. Diese Einschränkung wurde aufgehoben.

    In einigen Fällen, v.a. in Kombination mit der Klausel FIRST oder TOP, hat die Verwendung einer SELECT-Anweisung in Verbindung mit einer ORDER BY-Klausel keine Auswirkungen auf die Ergebnisse einer Ansichtsdefinition oder Mengenoperation. In anderen Kontexten ist die ORDER BY-Klausel zulässig, hat aber keine Auswirkungen auf den Vorgang.

  • SELECT-Anweisungen können nun START AT als Teil der TOP-Klausel enthalten    START AT bietet zusätzliche Flexibilität für Abfragen, die die Ergebnismenge explizit einschränken.

    Weitere Hinweise finden Sie unter SELECT-Anweisung.

  • Integritätsregeln können nun benannt werden   Prüf-Integritätsregeln, Eindeutigkeits-Integritätsregeln und Integritätsregeln zur Erhaltung der referentiellen Integrität können nun Namen zugewiesen werden. Dies ermöglicht die Änderung von Tabellen- und Spalten-Integritätsregeln durch das Modifizieren einzelner Integritätsregeln, ohne die gesamte Tabellen-Integritätsregel ändern zu müssen.

    Um die Vorteile dieser Erweiterung für Datenbanken zu nutzen, die mit älteren Versionen erstellt wurden, müssen Sie das Datenbankdateiformat auf die neue Version umstellen, indem Sie die Datenbank entladen und neu laden.

    Weitere Hinweise finden Sie unter ALTER TABLE-Anweisung, CREATE TABLE-Anweisung und Tabellen- und Spalten-Integritätsregeln benutzen.

  • Laterale abgeleitete Tabellen gestatten äußere Referenzen in der FROM-Klausel   Es ist nun möglich, äußere Referenzen von abgeleiteten Tabellen und gespeicherten Prozeduren in der FROM-Klausel zu verwenden. Um darauf hinzuweisen, dass eine äußere Referenz erstellt wird, verwenden Sie das Schlüsselwort LATERAL.

    Weitere Hinweise finden Sie unter FROM-Klausel.

  • EXECUTE IMMEDIATE gestattet flexiblere Verarbeitung von Escapezeichen   Die neue Option WITH ESCAPES OFF ermöglicht es, die Verarbeitung von Escapezeichen zu unterdrücken. Diese Funktion erleichtert die Erstellung dynamischer Anweisungen, die Dateipfade enthalten.

    Weitere Hinweise finden Sie unter EXECUTE IMMEDIATE-Anweisung [SP].

  • EXECUTE IMMEDIATE unterstützt Abfragen, die Ergebnismengen zurückgeben   Diese neue Funktion ermöglicht eine dynamische Erstellung von Anweisungen innerhalb gespeicherter Prozeduren.

    Weitere Hinweise finden Sie unter Die EXECUTE IMMEDIATE-Anweisung in Prozeduren verwenden und EXECUTE IMMEDIATE-Anweisung [SP].

  • CREATE FUNCTION und ALTER FUNCTION erlauben nun die Transact-SQL-Syntax   Sie können nun benutzerdefinierte Funktionen im Transact-SQL-Dialekt erstellen, die einen skalaren Wert an die aufrufende Umgebung zurückgeben.

    Weitere Hinweise finden Sie unter CREATE FUNCTION-Anweisung (Webdienste).

  • Werte von autoincrement-Spalten sind nun beim Einfügen mehrerer Zeilen verfügbar   Wenn Sie Zeilen über einen wertsensitiven (Keyset-gesteuerten) Cursor einfügen, erscheinen die neu eingefügten Zeilen am Ende der Cursor-Ergebnismenge.

    Als Folge dieser Änderung kann der Wert einer autoincrement-Spalte für die zuletzt eingefügte Zeile gefunden werden, indem die letzte Zeile im Cursor ausgewählt wird. Beispiel: In Embedded SQL kann der Wert mit FETCH ABSOLUTE -1 Cursorname abgerufen werden.

    Weitere Hinweise finden Sie unter Zeilen mit einen Cursor ändern.

  • Ferndatenzugriff verarbeitet nun UUID/GUID-Spalten   Der Ferndatenzugriff kann nun eindeutige ID-Spalten von Microsoft SQL Server verarbeiten.

    Weitere Hinweise finden Sie unter Datentypkonvertierungen: Microsoft SQL Server und UNIQUEIDENTIFIERSTR-Datentyp.

  • Ferndatenzugriff benennt nun Verbindungen mit Fremdrechnern   Ferndatenzugriffverbindungen über ODBC erhalten nun Namen, sodass sie gelöscht werden können.

    Weitere Hinweise finden Sie unter Verbindungen für Ferndatenzugriff über ODBC verwalten.

  • Neue Funktion gibt den Datentyp eines Ausdrucks zurück   Die Funktion EXPRTYPE gibt den Datentyp eines Ausdrucks zurück.

    Weitere Hinweise finden Sie unter EXPRTYPE-Funktion [Verschiedene].

  • EXIT-Anweisung erweitert   Die Interactive SQL EXIT-Anweisung kann jetzt einen Exit-Code für Interactive SQL definieren.

    Weitere Hinweise finden Sie unter EXIT-Anweisung [Interactive SQL].

  • OUTPUT-Anweisung akzeptiert ASIS-Schlüsselwort   Wenn ASIS angegeben wird, werden Werte in die Datei ohne die Angabe von Escapezeichen geschrieben.

    Weitere Hinweise finden Sie unter OUTPUT-Anweisung [Interactive SQL].

  • Indizes und Fremdschlüssel können geändert werden   Die ALTER INDEX-Anweisung ermöglicht die Umbenennung von Indizes und Fremdschlüsseln. Außerdem gestattet es die Anweisung, den Indextyp für benutzererstellte Indizes sowie für Primär- und Fremdschlüsselindizes auf clustered oder nonclustered zu ändern.

    Um die Vorteile von Clustered-Indizes für Datenbanken zu nutzen, die mit älteren Versionen erstellt wurden, müssen Sie das Datenbankdateiformat auf die neue Version umstellen, indem Sie die Datenbank entladen und neu laden.

    Weitere Hinweise finden Sie unter ALTER INDEX-Anweisung.

  • Mehrere unterschiedliche Aggregate sind in Abfragen zulässig   Aggregatfunktionen können DISTINCT Spaltenname als Argument haben. In früheren Versionen der Software konnte nur eine einzige Aggregatfunktion mit einem DISTINCT-Argument in einer Abfrage enthalten sein. Nun können mehrere solcher Funktionen verwendet werden. Die folgende Abfrage ist in Version 9 zulässig, nicht aber in früheren Versionen der Software:
    SELECT count( DISTINCT first_name ),
           count( DISTINCT last_name )
    FROM contact

  • Tagesnamen in voller Länge und abgekürzt werden in allen unterstützten Sprachen für Ereignispläne erkannt   Bei der Erstellung von Ereignissen erkennt der Datenbankserver Tagesnamen sowohl, wenn sie in voller Länge als auch wenn sie abgekürzt in einer der von Adaptive Server Anywhere unterstützten Sprachen angegeben werden. Zuvor erforderten alle Sprachen, mit Ausnahme von Englisch, die Angabe der vollständigen Tagesnamen.

    Weitere Hinweise finden Sie unter CREATE EVENT-Anweisung.

  • Text von Prozeduren verbergen, um die Vertraulichkeit der Logik zu gewährleisten   Sie können die Logik verschleiern, die gespeicherten Prozeduren, Funktionen, Triggern und Ansichten zugrunde liegt, indem Sie die Option SET HIDDEN aktivieren. Damit können Anwendungen und Datenbanken verteilt werden, ohne dass die Logik in gespeicherten Prozeduren, Funktionen, Triggern und Ansichten veröffentlicht wird.

    Um die Vorteile dieser Erweiterung für Datenbanken zu nutzen, die mit älteren Versionen erstellt wurden, müssen Sie die Datenbank mit dem Dienstprogramm Upgrade auf die neue Version umstellen.

    Weitere Hinweise finden Sie unter Inhalt von Prozeduren, Funktionen, Triggern und Ansichten verbergen.

Erweiterungen zur Administration und Skalierbarkeit
  • Dienstprogramm Validierung liefert detaillierte Rückgabecodes   Das Dienstprogramm Validierung (dbvalid) liefert spezifischere Rückgabecodes, um den Grund eines aufgetretenen Fehlers anzugeben.

    Weitere Hinweise finden Sie unter Validierungs-Dienstprogramm (dbvalid).

  • Zwei neue Servereigenschaften   Zwei neue Servereigenschaften wurden hinzugefügt. CommandLine liefert Ihnen die Zeile, die für den Start des Servers verwendet wurde, und CompactPlatformVer liefert eine komprimierte Version der Servereigenschaft PlatformVer.

    Weitere Hinweise finden Sie unter Datenbankservereigenschaften.

  • Neue gespeicherte Prozedur sp_remote_primary_keys   Um Primärschlüsselinformationen über entfernte Tabellen zu erhalten, die den Ferndatenzugriff (RAS) verwenden, wurde die neue gespeicherte Prozedur sp_remote_primary_keys hinzugefügt.

    Um die Vorteile dieser Erweiterung für Datenbanken zu nutzen, die mit älteren Versionen erstellt wurden, müssen Sie die Datenbank mit dem Dienstprogramm Upgrade auf die neue Version umstellen.

    Weitere Hinweise finden Sie unter sp_remote_primary_keys-Systemprozedur.

  • Neue Eigenschaft connection_property gibt den Namen der Kommunikationsverbindung zurück   Die neue Verbindungseigenschaft CommNetworkLink gibt den Namen der Kommunikationsverbindung zurück.

    Weitere Hinweise finden Sie unter Verbindungseigenschaften.

  • NetWare unterstützt nun die volle Zeichensatzkonvertierung   In Version 8.x unterstützte NetWare die Konvertierung von Einzelbytezeichen zu Einzelbytezeichen. In Version 9.0 werden alle Zeichensätze, die von den anderen Plattformen unterstützt werden, auch von NetWare unterstützt.

  • Dienstprogramm Entladen kann Spaltenlisten entladen   Das Dienstprogramm Entladen (dbunload) kann nun die Spaltenliste für die LOAD TABLE-Anweisungen entladen, die das Programm in der Datei reload.sql erzeugt. Dadurch wird die neue Anordnung der Reihenfolge der Spalten in einer Tabelle vereinfacht.

    Weitere Hinweise finden Sie unter Entladen-Dienstprogramm (dbunload).

  • Datenbankserver registriert sich bei LDAP   Der Datenbankserver kann sich nun bei einem LDAP-Server registrieren, sodass Clients und das Dienstprogramm zur Positionsermittlung (dblocate) den LDAP-Server abfragen können, um den Datenbankserver zu finden. Dadurch können Clients, die über ein WAN oder durch eine Firewall hindurch ausgeführt werden, Server finden, ohne die IP-Adresse für diese Server angeben zu müssen. LDAP wird nur mit TCP/IP verwendet und nur auf Netzwerkservern.

    Weitere Hinweise finden Sie unter Mit einem LDAP-Server verbinden oder LDAP-Protokolloption [LDAP].

  • Verbesserte Handhabung bei einer großen Anzahl von Verbindungen   Der Wert der Verfügbarkeitszeitüberschreitung wird nun automatisch erhöht, wenn mehr als 200 Verbindungen vorhanden sind. Damit wurde die Verarbeitung bei einer großen Anzahl von Verbindungen verbessert.

    Weitere Hinweise finden Sie unter Serveroption -tl und LivenessTimeout-Verbindungsparameter [LTO].

  • Filterung des Anforderungslogs, Unterstützung von Hostvariablen   Die Ausgabe in das Anforderungslog kann nun so gefiltert werden, dass nur Anforderungen einer bestimmten Verbindung oder für eine bestimmte Datenbank einbezogen werden. Außerdem können Werte von Hostvariablen nun in ein Anforderungslog ausgegeben werden.

    Weitere Hinweise finden Sie unter sa_server_option-Systemprozedur, Datenbankperformance steigern, sa_get_request_times-Systemprozedur und Serveroption -zr.

  • BACKUP-Anweisung und dbbackup gestatten die Umbenennung der Logkopie   Sie können die Logkopie mit der Anweisung BACKUP und dem Sicherungsdienstprogramm (dbbackup) umbenennen.

    Weitere Hinweise finden Sie unter Sicherungsdienstprogramm (dbbackup) und BACKUP-Anweisung.

  • START DATABASE-Anweisung gestattet die Logkürzung bei Checkpoint und schreibgeschütztem Modus   Die Anweisung START DATABASE gestattet nun den Start einer Datenbank mit Logkürzung bei aktiviertem Checkpoint oder im schreibgeschützten Modus.

    Weitere Hinweise finden Sie unter START DATABASE-Anweisung.

  • Adaptive Server Anywhere unterstützt verschiedene Auditing-Optionen   In früheren Versionen von Adaptive Server Anywhere konnten Sie das Auditing aktivieren oder deaktivieren. Nun können Sie festlegen, welche Optionen vom Auditing aufgezeichnet werden sollen.

    Weitere Hinweise finden Sie unter sa_disable_auditing_type-Systemprozedur oder sa_enable_auditing_type-Systemprozedur.

  • Neue Werte können an Funktion event_parameter übergeben werden   Es können drei neue Werte an die Funktion event_parameter übergeben werden. ScheduleName gibt den Namen der Planung zurück, die das Ereignis angestoßen hat. AppInfo gibt den Wert der Eigenschaft connection_property('AppInfo') für die Verbindung zurück, die das Ereignis verursacht hat. DisconnectReason gibt eine Zeichenfolge zurück, die angibt, warum die Verbindung beendet wurde.

    Weitere Hinweise finden Sie unter EVENT_PARAMETER-Funktion [System].

  • Neue Servereigenschaft ermittelt, wie viele Benutzer gleichzeitig mit dem Netzwerkserver verbunden sind   Die neue Eigenschaft LicensesInUse ermittelt die Anzahl der Benutzer, die aktuell gleichzeitig mit dem Netzwerkserver verbunden sind. Die gleichzeitigen Benutzer werden anhand der Anzahl der eindeutigen Client-Netzwerkadressen erkannt, die mit dem Server verbunden ist, nicht anhand der Anzahl von Verbindungen. Wenn z.B. drei Clientrechner mit einem Server verbunden sind und jeder Clientrechner zwei Verbindungen hat, hat property( 'LicensesInUse' ) den Wert '3'.

    Weitere Hinweise finden Sie unter Datenbankservereigenschaften.

  • Diensterstellungs-Dienstprogramm [dbsvc] kann nun Dienste starten und stoppen   Dem Dienstprogramm zur Erstellung von Diensten [dbsvc] wurden zwei neue Optionen hinzugefügt. Dbsvc-u Dienstname startet den Dienst "Dienstname" und dbsvc -x Dienstname stoppt den Dienst "Dienstname".

    Weitere Hinweise finden Sie unter Dienstprogramm für Dienste (dbsvc) für Windows.

  • Netzwerkserver unterstützt die LocalOnly-Protokolloption [LOCAL]   Sie können die LocalOnly-Protokolloption [LOCAL] für den Server verwenden. Wenn Sie einen Server mit der Protokolloption LocalOnly mit dem Wert YES ausführen, kann der Netzwerkserver als Personal Server ohne Verbindungs- oder CPU-Begrenzungen genutzt werden.

    Weitere Hinweise finden Sie unter LocalOnly-Protokolloption [LOCAL].

  • Neue Mindestcachegröße für Datenbankserver bei Verwendung von Address Windowing Extensions   Die Mindestgröße des Datenbankserver-Caches bei der Verwendung von Address Windowing Extensions (AWE) unter Windows 2000, Windows XP und Windows Server 2003 beträgt nun 2 MByte. In früheren Versionen lag die Mindestcachegröße bei der Verwendung von AWE bei 3 GByte bis 256 MByte.

    Weitere Hinweise finden Sie unter Serveroption -cw.

  • Neue Datenbankeigenschaft legt den Laufwerkstyp fest   Die neue Datenbankeigenschaft DriveType stellt nun Informationen über das Laufwerk bereit, auf dem sich die Datenbankdatei befindet.

    Weitere Hinweise finden Sie unter Datenbankeigenschaften.

  • Adaptive Server Anywhere-NetWare ist nun schneller   Der Adaptive Server Anywhere-Server für NetWare verwendet nun LibC anstelle von CLIB. LibC ist eine C-Laufzeitbibliothek, die eine bessere Interaktion mit dem neuen Kernel des NetWare-Betriebssystems ermöglicht, als die alte CLIB-Bibliothek. Die gesamte clientseitige Software für NetWare (einschließlich dblib, dbisql, dbconsole und dbremote) verwendet weiterhin CLIB. Dies hat den Vorteil, dass die maximale Dateigröße unter NetWare auf die von NTFS erhöht wurde, wodurch gegebenenfalls mehrere CPUs verwendet werden können. Außerdem können TCP und SPX Winsock verwenden, das schneller als in früheren Versionen ist.

    Weitere Hinweise finden Sie unter Physische Einschränkungen und Verhaltensänderungen in Version 9.0.

  • Erweiterungen externer Funktionen unter NetWare   Externe Funktionen oder externe gespeicherte Prozeduren können unter NetWare nun mehrere NLMs ohne Namenskonflikte verwenden.

  • Verbindungen können eine Sprache für Fehlermeldungen festlegen   Jede Verbindung zum Datenbankserver kann nun die Sprache festlegen, in der der Datenbankserver Fehlermeldungen und verschiedene andere Zeichenfolgen ausgibt. Die von der Verbindung verwendete Sprache ist unabhängig von der vom Server verwendeten Sprache. Der Datenbankserver verwendet die von der Verbindung festgelegte Sprache auch zur Verarbeitung von Datumszeichenfolgen.

  • Zwei neue Servereigenschaften identifizieren den Prozessortyp   Zwei neue Eigenschaften der Serverebene wurden hinzugefügt. ProcessorArchitecture identifiziert den Prozessortyp sowie Plattformen, auf denen ein Prozessor emuliert werden kann, NativeProcessorArchitecture identifiziert den nativen Prozessortyp.

    Weitere Hinweise finden Sie unter Datenbankservereigenschaften.

  • Groß- und Kleinschreibung des Datenbankkennworts unabhängig von Einstellung der Datenbank   Mit der Anweisung CREATE DATABASE, dem Dienstprogramm Initialisierung [dbinit] und dem Assistenten "Datenbanken erstellen" können Sie festlegen, ob Kennwörter zwischen Groß- und Kleinschreibung unterscheiden sollen. Die Unterscheidung der Schreibweise bei Kennwörtern ist unabhängig davon, welche Einstellung für die Datenbank hinsichtlich der Unterscheidung zwischen Groß- und Kleinschreibung für Zeichenfolgenvergleiche festgelegt ist. Mit der neuen Datenbankeigenschaft CaseSensitivePasswords können Sie die Einstellung für die Kennwortschreibweise für eine Datenbank festlegen.

    Weitere Hinweise finden Sie unter CREATE DATABASE-Anweisung und Dienstprogramm Initialisierung (dbinit).

Performance-Erweiterungen (Abfrageoptimierung)

Bei den hier aufgelisteten neuen Funktionen handelt es sich um Erweiterungen zur Abfrageoptmierung, für deren Verwendung keine Benutzeraktion erforderlich ist. Sie werden ohne Interaktion des Benutzers wirksam. Wenn Sie die Abfrageausführungspläne überprüfen, können Sie die Wirkung dieser Optimierungen möglicherweise erkennen.

Die Optimierungserweiterungen erfordern kein Datenbank-Upgrade, doch sie arbeiten am effizientesten für Datenbanken, die mit Version 9 der Software erstellt wurden.

  • Kostenbasierte Unterabfragenoptimierung   Der Optimierer hat den Umfang der für Unterabfragen verfügbaren Optimierungen deutlich erweitert. In früheren Versionen wurden Unterabfragen entweder während der semantischen Abfrageoptimierung als Joins neu geschrieben oder separat vom Rest der Abfrage optimiert. Nun können Unterabfragen, die zu komplex sind, um in Joins umgeschrieben zu werden, auch als integraler Bestandteil der Abfrage optimiert werden.

  • Gepufferter Zeilenabruf verbessert die Performance sequenzieller Scans   Wenn Zeilen aus einer Datenbank für einen sequenziellen Table Scan gelesen werden, kann Adaptive Server Anywhere nun Zeilen in einen Puffer kopieren, bevor sie an den Client zurückgegeben werden. Abhängig von der Komplexität der Abfrage, können dadurch erhebliche Zeiteinsparungen verzeichnet werden.

  • Oberste N Abfragen werden effizienter ausgeführt   Ein neuer Algorithmus für die Ausführung von Abfragen, die die Klausel TOP N verwenden, sorgt für eine schnellere Ausführung.

    Weitere Hinweise finden Sie unter SortTopN-Algorithmus (SrtN).

  • Neuer Algorithmus zur Feststellung, welche Frequenzen in Histogrammen gehalten werden   In früheren Versionen erstellten Spaltenhistogramme einzelne Buckets für Werte mit einer Selektivität von > 1%. Die Bedingungen für einzelne Buckets wurden gelockert, sodass das Histogramm nun versucht, eine Mindestanzahl von einzelnen Buckets zu bewahren.

    Weitere Hinweise finden Sie unter Optimiererschätzungen und Spaltenstatistiken.

  • Eigenschaft QueryCachedPlans zeigt, wie viele Ausführungspläne aktuell im Cache abgelegt werden   Die neue Eigenschaft QueryCachedPlans zeigt, wie viele Abfrageausführungspläne aktuell für eine bestimmte Verbindung oder für alle Verbindungen im Cache abgelegt werden. Die Eigenschaft kann in Verbindung mit QueryCachePages, QueryOptimized, QueryBypassed und QueryReused verwendet werden, um die beste Einstellung für die Option max_plans_cached zu ermitteln.

    Weitere Hinweise finden Sie unter Verbindungseigenschaften.

  • Pläne werden schneller für Prozeduranweisungen im Cache abgelegt    Der Umfang der Anweisungen, für die Zugriffspläne im Cache abgelegt werden, wurde erweitert und umfasst nun Abfragen in gespeicherten Prozeduren, deren Ergebnismengen von der Prozedur an die aufrufende Anweisung zurückgegeben werden. Diese Erweiterung bewirkt, dass bestimmte Anweisung nicht mehr neu optimiert werden müssen.

    Weitere Hinweise finden Sie unter Planzwischenspeicherung.

  • Erstellung von Indexstatistiken, wenn Indizes aktualisiert werden   Für alle Indizes, einschließlich der Indizes für Katalogtabellen, werden Statistiken erstellt, wenn ein Index aktualisiert wird. Dadurch werden dem Optimierer exakte Statistiken zur Verfügung gestellt, und zwar nahezu ohne Perfomance-Einbußen. Statistiken bleiben in SYSATTRIBUTE für die einzelnen Indizes in Form einer Zeile pro Statistik erhalten.

    Um die Vorteile dieser Erweiterung für Datenbanken zu nutzen, die mit älteren Versionen erstellt wurden, müssen Sie das Datenbankdateiformat auf die neue Version umstellen, indem Sie die Datenbank entladen und neu laden.

    Weitere Hinweise finden Sie unter ISYSATTRIBUTE-Systemtabelle.

Performance-Erweiterungen (Servervorgang)
  • Neue Systemmonitorstatistiken   Zwei neue Systemmonitorstatistiken "Comm: Licenses in Use" (Kommunikation: Verwendete Lizenzen) und "Connection Count" (Verbindungszähler) wurden hinzugefügt. Diese gestatten es Benutzern, die Anzahl der verwendeten Verbindungen zu verfolgen.

    Weitere Hinweise finden Sie unter Kommunikationsstatistiken und Verschiedene Statistiken.

  • Option APPEND { ON | OFF } wurde der UNLOAD-Anweisung hinzugefügt   Die neue Option APPEND ermöglicht es, entladene Daten an das Ende der angegebenen Datei anzuhängen.

  • Temporäre Tabellen können nun als NOT TRANSACTIONAL deklariert werden   Wenn NOT TRANSACTIONAL verwendet wird, ist die Tabelle nicht von COMMIT oder ROLLBACK betroffen. Diese Erweiterung ist nützlich, wenn Prozeduren, die auf die Tabelle zugreifen, wiederholt ohne COMMIT aufgerufen werden.

    Weitere Hinweise finden Sie unter CREATE TABLE-Anweisung und DECLARE LOCAL TEMPORARY TABLE-Anweisung.

  • Beständige Indexstatistiken   Die Verwaltung genauer Statistiken über die physischen Eigenschaften von Zielindizes erleichtert die kostenbasierten Entscheidungen des Optimierers, welche Indizes verwendet werden sollen. Statistiken bleiben nun in SYSATTRIBUTE erhalten und werden verwaltet, wenn die einzelnen Indizes aktualisiert werden. Außerdem überprüft die VALIDATE-Anweisung, ob die Statistiken zu den festgelegten Indizes richtig sind, und erzeugt andernfalls einen Fehler. Dadurch können dem Optimierer präzise Statistiken praktisch ohne Performance-Einbußen bereitgestellt werden.

    Um die Vorteile dieser Erweiterung für Datenbanken zu nutzen, die mit älteren Versionen erstellt wurden, müssen Sie das Datenbankdateiformat auf die neue Version umstellen, indem Sie die Datenbank entladen und neu laden.

    Weitere Hinweise finden Sie unter ISYSATTRIBUTE-Systemtabelle und VALIDATE-Anweisung.

  • Neue Option optimistic_wait_for_commit ist hinzugefügt worden   Diese Option simuliert das Sperrverhalten der Version 5.x, bei dem Transaktionen Fremdschlüsselzeilen vor Primärschlüsselzeilen hinzufügen. Diese Option ist nicht für den normalen Einsatz gedacht. Sie kann aber nützlich sein, wenn Anwendungen der Version 5.x auf Version 8.x oder später migriert werden.

  • Neue Eigenschaft db_extended_property ist hinzugefügt worden   Die neue Funktion DB_EXTENDED_PROPERTY ist ähnlich DB_PROPERTY, mit dem Unterschied, dass sie es gestattet, auch einen optionalen eigenschaftsspezifischen Zeichenfolgenparameter festzulegen.

    Weitere Hinweise finden Sie unter DB_EXTENDED_PROPERTY-Funktion [System].

  • Zwei neue Eigenschaften hinzugefügt   Zwei neue Eigenschaften wurden hinzugefügt: FileSize und FreePages. Beide Eigenschaften können ein optionales Argument haben, das den DBSpace festlegt, für den die Eigenschaft angefordert wird.

    Weitere Hinweise finden Sie unter Datenbankeigenschaften.

  • Dialogfreier Modus des Servers ist erweitert worden   Der stille Modus und die Protokollierungsoptionen des Servers wurden erweitert, sodass der Server eine Reihe von Meldungen unterdrücken kann. Außerdem wurde die Option -qw durch die Option -q sowie die Option -qi durch die Option -Q ersetzt.

Programme für die Entwicklung und Verwaltung
  • Plug-In-Änderungen von Adaptive Server Anywhere   Das Adaptive Server Anywhere-Plug-In für Sybase Central wurde neu organisiert. Ein großer Teil der Informationen, die zuvor in Eigenschaftsfenstern, Fensterfeldern und Ordnern im linken Fensterausschnitt verfügbar waren, sind nun in Registern im rechten Fensterausschnitt enthalten. Wenn Sie z.B. Daten zu einem Fremdschlüssel anzeigen wollen, wählen Sie nun die Tabelle, die den Fremdschlüssel enthält, im linken Fensterausschnitt aus und wählen dann das Register "Fremdschlüssel" im rechten Fensterausschnitt. In früheren Versionen enthielt der linke Fensterausschnitt einen separaten Ordner "Fremdschlüssel".

    Außerdem wurden am Plug-In auch folgende Änderungen vorgenommen:

    • Der Tabelleneditor hat kein eigenes Fenster mehr. Sie bearbeiten Tabellen nun direkt im rechten Fensterausschnitt von Sybase Central.

    • Sie können gespeicherte Prozeduren, Funktionen, Trigger und Ereignisse im rechten Fensterausschnitt von Sybase Central oder in einem eigenen Code-Editor-Fenster bearbeiten, wenn Sie mit mehreren geöffneten Fenstern arbeiten wollen.

    • Die Schaltflächen der Symbolleisten ändern sich nun, sodass sie die objektspezifischen Optionen für das gewählte Objekt enthalten.

    • Das Log der SQL-Anweisungen und die Servernachrichten (dieselben Informationen, die im Datenbankserver-Meldungsfenster angezeigt werden) können nun direkt im Hauptfenster von Sybase Central eingesehen werden. Um diese Informationen zu sehen, wählen Sie in Sybase Central Datei » Servermeldungen und ausgeführte SQL. Der Fensterausschnitt "Servermeldungen und ausgeführte SQL" erscheint unten im Sybase Central-Hauptfenster.

    • Das Adaptive Server Anywhere-Plug-In bietet einige neue Assistenten, die den Benutzer durch die Ausführung von Aufgaben leiten, wie etwa durch die Erstellung von Tabellen, Eindeutigkeits-Integritätsregeln und Webdiensten.

  • Erweiterte Unterstützung der Zwischenablage im Adaptive Server Anywhere-Plug-In   Die Unterstützung der Zwischenablage wurde im Adaptive Server Anywhere-Plug-In erweitert, sodass Sie die meisten Objekte in Sybase Central in andere Anwendungen, wie etwa Interactive SQL oder einen Texteditor, kopieren und einfügen können. Wenn Sie Objekte in andere Anwendungen kopieren, erscheinen, abhängig von dem von Ihnen gewählten Objekt, entweder der Objektname oder der SQL-Code für das Objekt. Wenn Sie beispielsweise einen Index in Sybase Central kopieren und in einen Texteditor einfügen, erscheint die Anweisung CREATE INDEX für diesen Index.

    Weitere Hinweise finden Sie unter Datenbankobjekte im SQL Anywhere-Plug-In kopieren.

  • Debugger-Änderungen   Der Debugger, mit dem Sie sowohl in gespeicherten Prozeduren als in auch Java-Klassen nach Fehlern suchen können, wurde in Sybase Central integriert. Die Benutzeroberfläche wurde neu gestaltet.

    Weitere Hinweise finden Sie unter Prozeduren, Funktionen, Trigger und Ereignisse bei der Fehlersuche.

  • Sybase Central, Interactive SQL und das Adaptive Server Anywhere-Konsolendienstprogramm enthalten eine Option für die automatische Prüfung auf Software-Updates   Sybase Central, Interactive SQL und das Adaptive Server Anywhere-Konsolendienstprogramm können so konfiguriert werden, dass sie automatisch auf Software-Updates prüfen. Diese Option kann in Interactive SQL und dem Adaptive Server Anywhere-Konsolendienstprogramm über das Fenster "Optionen" sowie in Sybase Central über das Hilfemenü gesetzt werden, wenn das Adaptive Server Anywhere-Plug-In geladen ist. In früheren Versionen musste eine Website angezeigt werden, um diese Informationen zu erhalten.

  • Erweiterungen des Adaptive Server Anywhere-Konsolendienstprogramms   Das Adaptive Server Anywhere-Konsolendienstprogramm hat eine Reihe von Erweiterungen erfahren, wie etwa Änderungen der Benutzeroberfläche, Unterstützung mehrerer Verbindungen, Sortierung und Drag-Drop.

  • Schneller Start von Sybase Central und Interactive SQL   Unter Windows verfügen Sybase Central und Interactive SQL über einen Schnelllader, der die Startzeit von Anwendungen beim Start von Sybase Central oder Interactive SQL verkürzt. Beim Aufruf von Adaptive Server Anywhere 9.0.0 werden zwei Hintergrundprozesse gestartet, nämlich eine Instanz von dbisqlg.exe und eine Instanz von scjview.exe. Hierbei handelt es sich um die Schnellladeprozesse für Interactive SQL bzw. Sybase Central. Beide Programme werden gestartet, wenn sich der Benutzer anmeldet.

    Weitere Hinweise finden Sie unter Schnelllader-Option verwenden.

  • Editor mit Syntaxmarkierungen in Interactive SQL   Sie können das Erscheinungsbild der Syntax im Fensterausschnitt der SQL-Anweisungen über das Fenster "Optionen" in Interactive SQL konfigurieren.

  • Von Interactive SQL aus ausgeben   Sie können den Inhalt des Fensterausschnitts der SQL-Anweisungen und den grafischen Plan in Interactive SQL ausgeben.

    Weitere Hinweise finden Sie unter In Interactive SQL navigieren.

  • Erweiterungen des grafischen Plans   Die Anzeige des grafischen Plans wurde erweitert:

    • Die Anzahl der Zeilen, die von einem Vorgang an einen anderen übergeben wird, wird anhand der Linienstärke illustriert.

    • Langsame Vorgänge werden durch einen roten Rahmen hervorgehoben.

    • Die Statistikanzeige wurde erweitert und neu organisiert.

    • Sie können nun den Zugriffsplan ausgeben.

  • Datenbank-Dienstprogramme akzeptieren @Dateiname-Parameter   Alle Dienstprogramme zur Datenbankadministration, ausgenommen Interactive SQL (dbisql), das Dienstprogramm für die Sprachauswahl (dblang) und das Adaptive Server Anywhere-Konsolendienstprogramm (dbconsole), akzeptieren nun die @Dateiname-Syntax und damit Parameter innerhalb einer Datei. Der Dateiname kann überall in der Konfigurationszeile angegeben werden und die Parameter aus dieser Datei werden an der betreffenden Stelle eingefügt. Es können mehrere Dateien angegeben werden und für die Angabe der Datei können Befehlszeilenoptionen verwendet werden. Beachten Sie, dass die Syntax von @file nicht rekursiv ist.

    Weitere Hinweise finden Sie unter Serveroption @data.

  • Zeilennummern erscheinen neben Ergebnissen in Interactive SQL   Interactive SQL verfügt über die Option, neben Ergebnissen Zeilennummern anzuzeigen. Diese Option kann im Register "Ergebnisse" im Fenster "Optionen" von Interactive SQL festgelegt werden.

  • Interactive SQL kann als Standardeditor für .SQL-Dateien festgelegt werden   Auf Windows-Plattformen können Sie eine Dateizuordnung für .SQL-Dateien erstellen, damit die Datei in Interactive SQL geöffnet wird, wenn Sie darauf doppelklicken.

    Weitere Hinweise finden Sie unter Interactive SQL-Dienstprogramm (dbisql).

  • Erweiterungen des Fensters "Befehlsverlauf" von Interactive SQL   Sie können nun Befehle aus dem Fenster "Befehlsverlauf" in Interactive SQL kopieren und einfügen sowie mehrere Befehle im Fenster auswählen. Der Befehlsverlauf wird nun zwischen verschiedenen Interactive SQL-Sitzungen gespeichert.

    Weitere Hinweise finden Sie unter SQL-Anweisungen, Ausführungspläne und Ergebnismengen drucken.

  • Warnungen haben nun das Präfix W   Vor Version 9.0 hatten alle Warnungen und Fehlermeldungen das Präfix I oder E. Warnungen haben nun das Präfix W. Diese Änderung betrifft dbmlsrv9, dbmlsync, dbremote, ssremote, dbltm und ssqueue.