如果在将文本文件中的数据导入 MySQL 表时,使用了反斜杠(\)以外的其他转义字符,MySQL是如何评估的?


反斜杠(\)是 MySQL 的默认转义字符,如果在文本文件中使用它,则在从文本文件导入数据到表时,无需在查询中提及它。但是,如果使用其他字符作为转义字符,则必须使用 `ESCAPED BY` 选项在导入文本文件到表的查询中指定它。以下示例可以帮助理解:

假设我们使用星号(‘*’)作为文本文件中的转义字符,如下所示:

id,Name,Country,Salary
105,Chum*,Marsh,USA,11000
106,Danny*,Harrison,AUS,12000

现在,在将此文本文件导入 MySQL 表时,我们需要在查询中指定 `ESCAPED BY` 选项,如下所示:

mysql> LOAD DATA LOCAL INFILE 'd:\A.txt' INTO table employee6_tbl FIELDS TERMINATED BY ',' ESCAPED BY ‘*’ IGNORE 1 ROWS;
Query OK, 2 rows affected (0.03 sec)
Records: 2 Deleted: 0 Skipped: 0 Warnings: 0

现在,我们可以使用以下查询查看导入的内容:

mysql> Select * from employee6_tbl;
+------+----------------+----------+--------+
| Id   | Name           | Country  | Salary |
+------+----------------+----------+--------+
| 105  | Chum,Marsh     | USA      | 11000  |
| 106  | Danny,Harrison | AUS      | 12000  |
+------+----------------+----------+--------+
2 rows in set (0.00 sec)

更新于:2020年2月4日

266 次浏览

启动你的职业生涯

完成课程获得认证

开始
广告