Maison >base de données >tutoriel mysql >Exécuter des instructions SQL à partir d'un fichier texte sur le client MySQL
Comprenons comment exécuter des instructions SQL à partir de fichiers texte sur le client MySQL. Le client MySQL est généralement utilisé de manière interactive. Voyons un exemple de la même chose -
shell> mysql db_name
Vous pouvez également mettre des instructions SQL dans un fichier, puis dire à MySQL de lire l'entrée de ce fichier particulier. Pour ce faire, créez d'abord un fichier texte text_file.
Ce fichier texte contiendra les instructions qui doivent être exécutées. Prenons un exemple pour comprendre ce processus −
shell> mysql db_name < text_file
Il n'est pas nécessaire de spécifier le nom de la base de données sur la ligne de commande si vous placez l'instruction USE db_name comme première instruction dans le fichier texte. Prenons un exemple pour comprendre cela -
shell> mysql < text_file
Si mysql est déjà en cours d'exécution, vous pouvez utiliser la commande source ou exécuter le fichier de script SQL. Commande. Prenons un exemple pour comprendre cela -
mysql> source file_name mysql> \. file_name
Parfois, les utilisateurs peuvent souhaiter que le script leur montre des informations de progression. Pour ce faire, vous pouvez utiliser l'instruction insert comme indiqué ci-dessous -
SELECT '<info_to_display>' AS ' ';
<info_to_display>
Vous pouvez également appeler mysql à l'aide de l'option --verbose. Cela provoque l'affichage de chaque instruction avant le résultat qu'elle génère.
mysql ignore les caractères Unicode Byte Order Mark (BOM) au début des fichiers d'entrée.
Avant cette fonction, ils étaient lus et envoyés au serveur, provoquant des erreurs de syntaxe.
Maintenant, BOM n'entraînera pas la modification par MySQL de son jeu de caractères par défaut.
Pour ce faire, vous pouvez appeler mysql avec des options telles que --default-character-set=utf8 .
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!