pymysql导入数据报错:
pymysql.err.DataError: (1406, "Data too long for column 'view_number' at row 1")
或者报错:
<class 'pymysql.err.InternalError'> (1261, "Row 1 doesn't contain data for all columns")
可能应为数据分隔符为\t,而数据末尾有\,导致没有正确识别分隔符。
比如我的数据是:
12522922 晚出至湖桑埭\ https://baike.baidu.com/item/%E6%99%9A%E5%87%BA%E8%87%B3%E6%B9%96%E6%A1%91%E5%9F%AD%5C 晚出至湖桑埭\ 312 《晚出至湖桑埭》作者周南 ,据考证是宋朝的一首诗词。 文物考古 ['诗词', '文学作品', '书籍', '中国文学'] ['晚出至湖桑埭\\'] [{'p': '作者', 'o': '周南', 'o_id': '1156083'}] [{'p': '中文名', 'o': '晚出至湖桑埭\\'}, {'p': '性质', 'o': '诗词'}, {'p': '年代', 'o': '宋'}]
将第1个位置和第3个位置的 晚出至湖桑埭\ 结尾的斜杠去掉,就不会报错了。
Row 1 doesn't contain data for all columns 的错误也可能是由数据确实导致,比如数据库需要11个数据项,但是实际数据中只有10个数据项。