MySQL 8.4 Release Notes
6.5.1.5 执行从文本文件中的 SQL 语句
通常,mysql 客户端是交互式使用的,如下所示:
mysql db_name
然而,也可以将 SQL 语句写入文件,然后告诉 mysql 从该文件读取输入。要做到这一点,请创建一个文本文件 text_ file
,其中包含您想执行的语句。然后,.invoke mysql 如下所示:
mysql db_name < text_file
如果将 USE
语句作为文件中的第一个语句,它不必要在命令行中指定数据库名称:db_ name
mysql < text_file
如果您已经运行 mysql,可以使用 source
命令或 \.
命令执行 SQL 脚本文件:
mysql> source file_name
mysql> \. file_name
有时,您可能想让脚本显示进度信息给用户。为此,可以插入类似这样的语句:
SELECT '<info_to_display>' AS ' ';
显示的语句输出 <info_ to_display>
。
您还可以使用mysql命令行选项--verbose
,该选项将在每个语句执行后显示结果。
mysql命令忽略输入文件开头的Unicode字节顺序标记(BOM)字符。之前,它将读取这些字符并将其发送到服务器,导致语法错误。BOM的存在不会使mysql更改默认字符集。如果要这样做,可以使用选项,如--default-character-set=utf8mb4
。
有关批处理模式的更多信息,请见第5.5节,“使用 mysql 在批处理模式下”。