python将csv转换成新数据库的sql文件,将所有字段类型都设置为文本(text)类型

问题描述:将源数据库生成的csv转换成新数据库的sql文件,将所有字段类型都设置为文本(text)类型,导致插入行或者修改字段出错。to_sql的if_exists='replace'代表目标表已经存在,此选项将删除整个表,然后使用新的数据重新创建它。这意味着现有表中的所有数据都将被删除,并用新数据替换,此时新建的表的字段类型都被设置成text。

python将csv转换成新数据库的sql文件,将所有字段类型都设置为文本(text)类型_第1张图片

解决方法:先删除表,再使用源数据库的创建表的语句建表,to_sql的if_exists='append'代表当表存在的时候将数据追加到现有表中。这意味着新的数据将被添加到表的末尾,而不会删除或替换现有的数据。此时新建的表的字段类型都被设置成源数据库表的字段类型。

python将csv转换成新数据库的sql文件,将所有字段类型都设置为文本(text)类型_第2张图片

你可能感兴趣的:(数据库,python)