4.5.1.5 从文本文件执行 SQL 语句
mysqlClient 端通常以交互方式使用,如下所示:
shell> mysql db_name
但是,也可以将 SQL 语句放入文件中,然后告诉mysql从该文件中读取其 Importing。为此,创建一个文本文件* text_file
*,其中包含要执行的语句。然后调用mysql,如下所示:
shell> mysql db_name < text_file
如果将USE db_name
语句作为文件中的第一条语句,则无需在命令行上指定数据库名称:
shell> mysql < text_file
如果已经在运行mysql,则可以使用source
命令或\.
命令执行 SQL 脚本文件:
mysql> source file_name
mysql> \. file_name
有时,您可能希望您的脚本向用户显示进度信息。为此,您可以插入如下语句:
SELECT '<info_to_display>' AS ' ';
显示的语句输出<info_to_display>
。
您还可以使用--verbose选项调用mysql,这会使每个语句在产生结果之前显示。
mysql忽略 Importing 文件开头的 Unicode 字节 Sequences 标记(BOM)字符。以前,它会读取它们并将其发送到服务器,从而导致语法错误。 BOM 的存在不会导致mysql更改其默认字符集。为此,请使用诸如--default-character-set=utf8之类的选项调用mysql。
有关批处理模式的更多信息,请参见第 3.5 节“在批处理模式下使用 mysql”。