mysql - 从分隔文件加载数据到 mysql 表时跳过错误行

标签 mysql

我正在使用以下查询将数据从文本文件加载到 mysql 表:

LOAD DATA INFILE "myFile.csv"
INTO TABLE some_table
COLUMNS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\n' (admin,consumer);

但是,当我的文件包含一些错误行时,它无法跳过该行,整个过程将在该位置停止。我的意思是如果我的文件格式像:

----------
sankr : kumar
----------
ramesh:rao
----------
new users add here
----------
sri : vennla
----------
anu : bhavya
----------

我必须通过跳过“新用户在此处添加”行来加载。如何做到这一点?

最佳答案

您要查找的关键字是IGNORE

如:

LOAD DATA INFILE "myFile.csv" IGNORE
INTO TABLE some_table
COLUMNS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\n' (admin,consumer);

关于mysql - 从分隔文件加载数据到 mysql 表时跳过错误行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8523956/

相关文章:

php - 在库 api 中为每个任务或每个事务创建一个函数?

MySql 查询 : Left Join

php - Mysql 查询 - 使用像 <something> 和 <something ='1' > 限制

mysql - 如何在使用 UNION mysql 查询时获取唯一值

mysql - 复杂的SQL关系

mysql - 返回第 5 个对象并很快将其作为一个长整数

php - 如何在 php 页面上显示存储在数据库中的图像?

php - 在 codeigniter 中上传时压缩图像大小

mysql - awk脚本调整格式

php - 查询从名为 user 和 connection 的两个表获取连接列表