我使用以下查询将数据从文本文件加载到mysql表:
LOAD DATA INFILE "myFile.csv"
INTO TABLE some_table
COLUMNS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\n' (admin,consumer);
Run Code Online (Sandbox Code Playgroud)
但是当我的文件包含一些错误行时,它无法跳过该行,整个过程在那个地方停止.我的意思是如果我的文件格式如下:
---------- 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);
Run Code Online (Sandbox Code Playgroud)
Pek*_*ica -3
无法使用 跳过数据内的行LOAD DATA INFILE。
只需稍后使用单独的查询删除该记录即可。
DELETE FROM table WHERE column = "new users add here";
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14800 次 |
| 最近记录: |