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 » Systemobjekte » Systemprozeduren » Alphabetische Liste der Systemprozeduren

 

xp_write_file-Systemprozedur

Schreibt Daten aus einer SQL-Anweisung in eine Datei

Syntax
xp_write_file( 
 Dateiname,
 Datei-Inhalt
)
Argumente
  • Dateiname   Verwenden Sie diesen LONG VARCHAR-Parameter, um den Dateinamen anzugeben.

  • Datei-Inhalt   Verwenden Sie diesen LONG BINARY-Parameter, um den Inhalt anzugeben, der in die Datei geschrieben werden soll.

Bemerkungen

Diese Funktion schreibt den Datei-Inhalt in die Datei Dateiname. Sie gibt "0" zurück, falls erfolgreich, und nicht Null bei Fehlschlag.

Dem Dateiname-Wert kann ein absoluter oder ein relativer Pfad vorangestellt werden. Wenn Dateiname ein relativer Pfad vorangestellt wird, ist der Dateiname relativ zum aktuellen Arbeitsverzeichnis des Datenbankservers. Falls die Datei bereits besteht, wird ihr Inhalt überschrieben.

Diese Funktion kann zum Entladen umfangreicher Binärdaten in Dateien hilfreich sein.

Sie können die Funktion CSCONVERT auch verwenden, um die für die Systemprozedur xp_write_file erforderliche Zeichensatzkonvertierung durchzuführen. Weitere Hinweise finden Sie unter CSCONVERT-Funktion [Zeichenfolge].

Berechtigungen

DBA-Berechtigung erforderlich

Siehe auch
Beispiele

Dieses Beispiel verwendet xp_write_file, um eine Datei accountnum.txt zu erstellen, die die Daten 123456 enthält:

CALL xp_write_file( 'accountnum.txt', '123456' );

Dieses Beispiel fragt die Contacts-Tabelle der Beispieldatenbank ab und erstellt dann eine Textdatei für jeden Kontakt, der in New Jersey wohnt. Die Textdateien werden benannt, wobei eine Verkettung des Vornamens (GivenName), des Nachnamens (Surname) und der Zeichenfolge .txt verwendet wird (z.B. Reeves_Scott.txt), und enthalten auf separaten Zeilen die Straßenadresse (Street), Stadt (City) und den Bundesstaat (State).

SELECT xp_write_file( 
Surname || '_' ||  GivenName || '.txt', 
Street || '\n' || City || '\n' || State ) 
FROM Contacts WHERE State = 'NJ';

Dieses Beispiel verwendet xp_write_file, um eine Bilddatei (JPG) für jedes Produkt in der Products-Tabelle zu erstellen. Jeder Wert in der ID-Spalte wird zu einem Dateinamen für eine Datei, die den entsprechenden Wert der Photo-Spalte enthält:

SELECT xp_write_file( ID || '.jpg' , Photo ) FROM Products;

Im obenstehenden Beispiel ist ID eine Zeile mit einer UNIQUE-Integritätsregel. Das ist wichtig, damit eine Datei nicht mit dem Inhalt von nachfolgenden Zeilen überschrieben wird. Auch müssen Sie die Dateierweiterung angeben, die den in der Spalte gespeicherten Daten entspricht. In diesem Fall speichert Products.Photo Bilddaten (JPG).