如何在将文件导入SQLite时忽略损坏的行?
在Linux上使用SQLite 3将文件中损坏的行导入表时,有没有办法忽略这些行?文件大小为13GB,文件中约有50条损坏的行,因此手动删除这些行并不容易。如有任何建议,将不胜感激如何在将文件导入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.
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无法做到这一点,只是为了确认。格雷普听起来是个不错的选择。