Heim > Datenbank > MySQL-Tutorial > Wie verwende ich die Funktion LOAD_FILE() in MySQL? (Codebeispiel)

Wie verwende ich die Funktion LOAD_FILE() in MySQL? (Codebeispiel)

藏色散人
Freigeben: 2019-03-27 15:25:31
Original
7059 Leute haben es durchsucht



In MySQL liest die Funktion LOAD_FILE() eine Datei und gibt ihren Inhalt als Zeichenfolge zurück.

Syntax

LOAD_FILE(file_name)
Nach dem Login kopieren

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;
Nach dem Login kopieren

Das Ergebnis:

+------------------------------------------+
| Result                                   |
+------------------------------------------+
| This text is all that the file contains! |
+------------------------------------------+
Nach dem Login kopieren

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'));
Nach dem Login kopieren

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;
Nach dem Login kopieren

Ergebnis:

+------------------------------------------+
| MyBlobColumn                             |
+------------------------------------------+
| This text is all that the file contains! |
+------------------------------------------+
Nach dem Login kopieren

Wenn die Datei nicht existiert, geben Sie NULL zurück:

SELECT LOAD_FILE('/data/oops.txt') AS Result;
Nach dem Login kopieren

Ergebnis:

+--------+
| Result |
+--------+
| NULL   |
+--------+
Nach dem Login kopieren

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';
Nach dem Login kopieren

Ergebnis:

+--------------------+----------+
| Variable_name      | Value    |
+--------------------+----------+
| max_allowed_packet | 67108864 |
+--------------------+----------+
Nach dem Login kopieren

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';
Nach dem Login kopieren

Ergebnis:

+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| secure_file_priv | /data/ |
+------------------+--------+
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage