In MySQL liest die Funktion LOAD_FILE() eine Datei und gibt ihren Inhalt als Zeichenfolge zurück.
Syntax
LOAD_FILE(file_name)
wobei Dateiname der vollständige Pfad zur Datei ist.
Das Folgende ist ein Beispiel für die Auswahl von Inhalten aus einer Datei:
SELECT LOAD_FILE('/data/test.txt') AS Result;
Das Ergebnis:
+------------------------------------------+ | Result | +------------------------------------------+ | This text is all that the file contains! | +------------------------------------------+
Ein Beispiel für eine Datenbank
Das Folgende ist ein Beispiel für die Auswahl des Inhalts einer Datei. Beispiel für eine Abfrage beim Einfügen in eine Datenbank:
INSERT INTO MyTable (FileId, UserId, MyBlobColumn) VALUES (1, 20, LOAD_FILE('/data/test.txt'));
In diesem Beispiel hat die Spalte MyBlobColumn einen BLOB-Datentyp (der das Speichern von Binärdaten ermöglicht).
Da sie nun in der Datenbank ist, können wir sie auswählen:
SELECT MyBlobColumn FROM MyTable WHERE UserId = 20;
Ergebnis:
+------------------------------------------+ | MyBlobColumn | +------------------------------------------+ | This text is all that the file contains! | +------------------------------------------+
Wenn die Datei nicht existiert, geben Sie NULL zurück:
SELECT LOAD_FILE('/data/oops.txt') AS Result;
Ergebnis:
+--------+ | Result | +--------+ | NULL | +--------+
Wenn eine der folgenden Bedingungen nicht erfüllt ist, kann NUll zurückgegeben werden:
1 Die Datei muss sich auf dem Server-Host befinden.
2. Sie müssen über die FILE-Berechtigung verfügen, um die Datei lesen zu können. Benutzer mit dieser FILE-Berechtigung können jede Datei auf dem Server-Host lesen, die weltweit oder vom MySQL-Server lesbar ist.
3. Die Datei muss für jeden lesbar sein und ihre Größe darf weniger als max_allowed_packet Bytes betragen.
Sie können dies wie folgt überprüfen:
SHOW VARIABLES LIKE 'max_allowed_packet';
Ergebnis:
+--------------------+----------+ | Variable_name | Value | +--------------------+----------+ | max_allowed_packet | 67108864 | +--------------------+----------+
Wenn die Systemvariable secure_file_priv auf einen nicht leeren Verzeichnisnamen gesetzt ist, muss die zu ladende Datei vorhanden sein befindet sich in diesem Verzeichnis.
Sie können so überprüfen:
SHOW VARIABLES LIKE 'secure_file_priv';
Ergebnis:
+------------------+--------+ | Variable_name | Value | +------------------+--------+ | secure_file_priv | /data/ | +------------------+--------+
In diesem Fall kann ich nur Dateien aus dem Verzeichnis /data/ lesen.
Verwandte Empfehlungen: „MySQL-Tutorial“
In diesem Artikel geht es um die Verwendung der LOAD_FILE()-Funktion in MySQL. Ich hoffe, dass er Freunden in Not hilfreich sein wird !
Das obige ist der detaillierte Inhalt vonWie verwende ich die Funktion LOAD_FILE() in MySQL? (Codebeispiel). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!