Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在将文件导入SQLite时忽略损坏的行?_Sql_Sqlite - Fatal编程技术网

如何在将文件导入SQLite时忽略损坏的行?

如何在将文件导入SQLite时忽略损坏的行?,sql,sqlite,Sql,Sqlite,在Linux上使用SQLite 3将文件中损坏的行导入表时,有没有办法忽略这些行?文件大小为13GB,文件中约有50条损坏的行,因此手动删除这些行并不容易。如有任何建议,将不胜感激 sqlite> .separator "|" sqlite> .import myFile.dat myTable myFile.dat line 29046575: expected 18 columns of data but found 3 升级到sqlite 3.8.10 当存在不匹配行时,3.

在Linux上使用SQLite 3将文件中损坏的行导入表时,有没有办法忽略这些行?文件大小为13GB,文件中约有50条损坏的行,因此手动删除这些行并不容易。如有任何建议,将不胜感激

sqlite> .separator "|"
sqlite> .import myFile.dat myTable
myFile.dat line 29046575: expected 18 columns of data but found 3

升级到sqlite 3.8.10


当存在不匹配行时,3.7.x似乎使整个导入无效。3.8.x似乎打印了一条警告,但仍在继续导入。

我会使用grep(或fgrep)输出文件的干净副本以进行导入,并根据正则表达式拾取的匹配行是好还是坏,使用“-v”标志或不使用。我可以告诉您,SQLite无法做到这一点,只是为了确认。格雷普听起来是个不错的选择。