Documentation Home

4.5.1.5 从文本文件执行 SQL 语句

mysql客户端通常以交互方式使用,如下所示 :

mysql db_name

但是,也可以将 SQL 语句放在一个文件中,然后告诉mysql从该文件中读取它的输入。为此,创建一个 text_file包含您希望执行的语句的文本文件。然后调用 mysql,如下所示:

mysql db_name < text_file

如果将一条语句作为文件中的第一条语句,则无需在命令行中指定数据库名称: USE db_name

mysql < text_file

如果您已经在运行mysqlsource ,则可以使用以下 命令或命令执行 SQL 脚本文件\.

mysql> source file_name
mysql> \. file_name

有时您可能希望脚本向用户显示进度信息。为此,您可以插入如下语句:

SELECT '<info_to_display>' AS ' ';

显示的语句输出 <info_to_display>

您还可以使用 选项调用mysql--verbose,这会使每个语句显示在它产生的结果之前。

mysql忽略输入文件开头的 Unicode 字节顺序标记 (BOM) 字符。以前,它读取它们并将它们发送到服务器,导致语法错误。BOM 的存在不会导致mysql更改其默认字符集。为此,请 使用诸如 之类的选项 调用mysql--default-character-set=utf8mb4

有关批处理模式的更多信息,请参阅 第 3.5 节,“在批处理模式下使用 mysql”