Mysql 加载数据填充命令可能因经验不足而出现问题
我有一个结构非常简单的数据库:Mysql 加载数据填充命令可能因经验不足而出现问题,mysql,csv,Mysql,Csv,我有一个结构非常简单的数据库: +-------+---------------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+---------------------+------+-----+---------+----------------+ | id | int(11)
+-------+---------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------------------+------+-----+---------+----------------+
| id | int(11) unsigned | NO | PRI | NULL | auto_increment |
| ngram | varchar(64) | NO | UNI | | |
| count | bigint(20) unsigned | NO | MUL | NULL | |
+-------+---------------------+------+-----+---------+----------------+
正如你可能猜到的那样,我正在将Google Web Ngrams的东西导入这个数据库
该文件是一个选项卡分隔的CSV文件,首先是ngram,然后是计数
以下是我认为有效的命令:
LOAD DATA INFILE 'vocab' INTO TABLE ngrams_copy FIELDS TERMINATED BY '\t' LINES TERMINATED BY '\n' (ngram, count)
但我得到一个错误,说:
Row 9558923 doesn't contain data for all columns
但我认为,因为我指定了ngram和count列,所以我告诉它这并不重要
我不在这方面的专业范围内,希望得到任何帮助。投诉行包含哪些数据?好问题,一个反斜杠,然后是计数。也许反斜杠会让事情变得混乱?很可能。可能希望快速查看其他行,或搜索任何其他“游离”反斜杠。我如何继续允许反斜杠工作?双反斜杠或类似的东西?也许,你得试试看。反斜杠是在“ngram”位置吗?如果是这样的话,它可能会有引号
'\'
。。。我将尝试从导入中消除任何垃圾,以避免任何“垃圾输入、垃圾输出”因素,以及其他可能导致数据负载中断的问题。如果发现多个反斜杠,请至少确定并修复如何将反斜杠添加到导入中。