在 MySQL 客户端上从文本文件执行 SQL 语句

mysqlmysqli database

让我们了解如何在 MySQL 客户端上从文本文件执行 SQL 语句。mysql 客户端通常以交互方式使用。让我们看一个相同的示例 −

shell> mysql db_name

将 SQL 语句放入文本文件中

也可以将 SQL 语句放入文件中,然后告诉 mysql 从该特定文件读取输入。为此,首先创建一个文本文件 text_file。

此文本文件将包含需要执行的语句。让我们举一个例子来理解相同的 −

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 忽略输入文件开头的 Unicode 字节顺序标记 (BOM) 字符。

  • 在此功能之前,它们被读取并发送到服务器,从而导致语法错误。

  • BOM 的存在不会导致 mysql 更改其默认字符集。

  • 为此,可以使用 --default-character-set=utf8 等选项调用 mysql。


相关文章