Maison > base de données > tutoriel mysql > Comment utiliser la fonction LOAD_FILE() dans MySQL ? (exemple de code)

Comment utiliser la fonction LOAD_FILE() dans MySQL ? (exemple de code)

藏色散人
Libérer: 2019-03-27 15:25:31
original
7089 Les gens l'ont consulté



Dans MySQL, la fonction LOAD_FILE() lit un fichier et renvoie son contenu sous forme de chaîne.

Syntaxe

LOAD_FILE(file_name)
Copier après la connexion

où file_name est le chemin complet du fichier.

Voici un exemple de ma sélection de contenu à partir d'un fichier :

SELECT LOAD_FILE('/data/test.txt') AS Result;
Copier après la connexion

Résultat :

+------------------------------------------+
| Result                                   |
+------------------------------------------+
| This text is all that the file contains! |
+------------------------------------------+
Copier après la connexion

Un exemple de base de données

Ici is Un exemple de requête lors de l'insertion du contenu d'un fichier dans la base de données :

INSERT INTO MyTable (FileId, UserId, MyBlobColumn) 
VALUES (1, 20, LOAD_FILE('/data/test.txt'));
Copier après la connexion

Dans cet exemple, la colonne MyBlobColumn a un type de données BLOB (lui permettant de stocker des données binaires).

Maintenant qu'il est dans la base de données on peut le sélectionner :

SELECT MyBlobColumn
  FROM MyTable
  WHERE UserId = 20;
Copier après la connexion

Résultat :

+------------------------------------------+
| MyBlobColumn                             |
+------------------------------------------+
| This text is all that the file contains! |
+------------------------------------------+
Copier après la connexion

Si le fichier n'existe pas, renvoyer NULL :

SELECT LOAD_FILE('/data/oops.txt') AS Result;
Copier après la connexion

Résultat :

+--------+
| Result |
+--------+
| NULL   |
+--------+
Copier après la connexion

Si l'une des conditions suivantes n'est pas remplie, NULL peut être retourné :

Le fichier doit être retourné. être situé sur l'hôte du serveur.

2. Vous devez disposer de l'autorisation FILE pour lire le fichier. Les utilisateurs disposant de cette autorisation FILE peuvent lire n'importe quel fichier sur l'hôte du serveur qui est lisible par tout le monde ou par le serveur MySQL.

3. Le fichier doit être lisible par tout le monde et sa taille est inférieure à max_allowed_packet octets.

Vous pouvez vérifier comme ceci :

SHOW VARIABLES LIKE 'max_allowed_packet';
Copier après la connexion

Résultat :

+--------------------+----------+
| Variable_name      | Value    |
+--------------------+----------+
| max_allowed_packet | 67108864 |
+--------------------+----------+
Copier après la connexion

Si la variable système secure_file_priv est définie sur un nom de répertoire non vide, le fichier à à charger doit se trouver dans ce répertoire.

Vous pouvez vérifier comme ceci :

SHOW VARIABLES LIKE 'secure_file_priv';
Copier après la connexion

Résultat :

+------------------+--------+
| Variable_name    | Value  |
+------------------+--------+
| secure_file_priv | /data/ |
+------------------+--------+
Copier après la connexion

Dans ce cas, je ne peux lire qu'à partir du document du répertoire /data/.

Recommandations associées : "Tutoriel MySQL"

Cet article concerne l'utilisation de la fonction LOAD_FILE() dans MySQL. J'espère qu'il sera utile aux amis dans le besoin. !



Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal