Sqlite向MySql导入数据

时间:2022-05-16 06:47:42

想把手上的Sqlite数据库导入到MySql,想来应该很简单,结果发现非常麻烦。

1、工具直接导入。试着找了几个软件,都不行。网上有人开发的,但是要收费,也不能用。

2、用各自支持的方式,中转。我用的是sqlitestudio和Navicat for MySQL,都挺好用。sqlite可以把表导出,mysql可以导入,想来比较容易,却无数的坑:

1)最好用的是dbf,双方都支持,而且带表结构。但是——dbf对中文支持稀烂。导出来的打开就已经是乱码了,想各种招都不行。

2)xml,导入时列识别不了

3)json不支持

4)xls,格式会将一些字符串自作主张的改得乱七八糟,也头疼

5)用access导倒是可以,就是非常麻烦

 

3、最后找到一条路径,可以完成导入:

 

1)把sqlite的ddl语句在mysql中运行,去掉一些不识别的部分,如自增,默认值等。成功后,再手动调整这些属性。这样就有了一个需要的库结构了。

2)用sqlite的导出数据

Sqlite向MySql导入数据

注意,配置中默认编码是“cp936”,改为utf-8。分隔符默认是逗号。还要选中列表为首行。

 Sqlite向MySql导入数据

3)mysql中,进入导入向导,选择txt

Sqlite向MySql导入数据

选择csv文件,下一步的分隔符改为逗号

Sqlite向MySql导入数据

下一步的数据行改为2

Sqlite向MySql导入数据

顺利的话,就会自动对应好所有的列

Sqlite向MySql导入数据

最关心的,中文字段成功过来了:

Sqlite向MySql导入数据