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-Referenzhandbuch » Verwendung von SQL » SQL-Anweisungen » SQL-Anweisungen (P-Z)

 

READ-Anweisung [Interactive SQL]

Mit dieser Anweisung lesen Sie Interactive SQL-Anweisungen aus einer Datei.

Syntax
READ [ ENCODING Kodierung ] Dateiname [ Parameter ] ...
Kodierung : Bezeichner oder Zeichenfolge
Bemerkungen

Die READ-Anweisung liest eine Sequenz der Interactive SQL-Anweisungen aus der benannten Datei. Diese Datei kann jede gültige Interactive SQL-Anweisung einschließlich weiterer READ-Anweisungen enthalten. READ-Anweisungen können beliebig tief ineinander verschachtelt werden. Wenn der Dateiname keinen absoluten Pfad enthält, sucht Interactive SQL nach der Datei. Interactive SQL durchsucht erst das Verzeichnis der aufrufenden Datei (wenn eine solche vorhanden ist), dann das aktuelle Verzeichnis, dann das Verzeichnis, das in der Umgebungsvariablen SQLPATH angegeben ist, und schließlich die Verzeichnisse, die in der Umgebungsvariablen PATH enthalten sind. Wenn die benannte Datei keine Erweiterung hat, durchsucht Interactive SQL jedes Verzeichnis nach demselben Dateinamen mit der Erweiterung .sql.

Mit der ENCODING-Klausel können Sie die Kodierung angeben, mit der die Datei gelesen werden soll. Die READ-Anweisung verarbeitet beim Lesen einer Datei keine Escapezeichen. Es wird vorausgesetzt, dass die gesamte Datei in der angegebenen Kodierung vorliegt.

Wenn in Interactive SQL die ENCODING-Klausel nicht angegeben ist, wird die Kodierung, die für das Lesen der Datei verwendet wird, in der folgenden Reihenfolge ermittelt:

  • Anhand der Kodierung, die mit der Option default_isql_encoding angegeben ist (falls diese Option festgelegt wurde).

  • Anhand der Standardkodierung des Zeichensatzes des Betriebssystems auf dem Computer, auf dem Interactive SQL läuft.

Weitere Hinweise zu Interactive SQL und Kodierungen finden Sie unter default_isql_encoding-Option [Interactive SQL].

Parameter können nach dem Namen der Befehlsdatei aufgeführt werden. Diese Parameter entsprechen den Parametern, die in der PARAMETERS-Anweisung zu Beginn der Anweisungsdatei benannt werden. Weitere Hinweise finden Sie unter PARAMETERS-Anweisung [Interactive SQL].

Parameternamen müssen in eckige Klammern gesetzt werden. Interactive SQL ersetzt dann den entsprechenden Parameter überall dort, wo die Quelldatei {Parametername} enthält, wobei Parametername der Name des entsprechenden Parameters ist.

Die Parameter, die an eine Befehlsdatei übergeben werden, können Bezeichner, Zahlen, angeführte Bezeichner oder Zeichenfolgen sein. Wenn ein Parameter in Anführungszeichen gesetzt ist, werden die Anführungszeichen während der Ersetzung in den Text eingegeben. Parameter, die keine Bezeichner, Zahlen oder Zeichenfolgen (mit Leerstellen oder Tabstops) sind, müssen in eckige Klammern ([ ]) gesetzt werden. Dadurch ist willkürliche Textersetzung in der Befehlsdatei möglich.

Wenn nicht genug Parameter in die Befehlsdatei übernommen werden, fordert Interactive SQL die Werte für die fehlenden Parameter an.

Wenn Sie eine reload.sql-Datei mit Interactive SQL ausführen, müssen Sie den Chiffrierschlüssel als Parameter angeben. Wenn Sie den Schlüssel nicht in der READ-Anweisung übergeben, werden Sie von Interactive SQL aufgefordert, den Schlüssel bereitzustellen. Weitere Hinweise finden Sie unter Interactive SQL-Dienstprogramm (dbisql).

Der Speicherort von Dateiname wird basierend auf dem Standort der READ-Anweisung wie folgt ermittelt:

  • Wenn die READ-Anweisung direkt in Interactive SQL ausgeführt wird, berechnet sich der Pfad von Dateiname relativ zum Verzeichnis, in dem Interactive SQL läuft.

  • Wenn die READ-Anweisungen in einer externen Datei enthalten sind (zum Beispiel in einer .sql-Datei), versucht Interactive SQL zuerst, den Pfad zu Dateiname relativ zum Speicherort der externen Datei aufzulösen. Wenn dies nicht gelingt, sucht Interactive SQL nach Dateiname in einem Pfad, der relativ zu dem Verzeichnis liegt, in dem Interactive SQL läuft.

Berechtigungen

Keine.

Nebenwirkungen

Keine.

Siehe auch
Standards und Kompatibilität
  • SQL/2003   Erweiterung des Herstellers

Beispiel

Im Folgenden werden Beispiele für die Verwendung der READ-Anweisung gegeben.

READ status.rpt '160';
READ birthday.sql [>= '1988-1-1'] [<= '1988-1-30'];