sqlite迁移mysql

1.SQLite导出

可以使用各种工具导出库,我使用FireFox的SQLite的管理插件SQLite Manager。

使用SQLite Manager插件打开数据库(.db .sqlite3)文件,选择导出。将整个库文件导出为.sql查询语句。

2.SQL语句兼容性修改

为了保证SQL语句的兼容,需要将SQLite的特有的格式,修改为MySQL的格式。下面为我总结的一般规则(下面的方括号应被忽略):

  1. 将 ["] 改为 [`]
    也可以移除全部的 ["] ,但是如果有一些函数名作为字段名(e.g. regexp)时将会遇到错误
    需要注意一些默认为 ["] ,其作用不在字段上的,不应被替换而应当被保留
  2. 移除所有的 [BEGIN TRANSACTION] [COMMIT] 以及 任何包含 [sqlite_sequence] 的(整)行
  3. 将所有 [autoincrement] 改为 [auto_increment]
  4. 将所有 ['f'] 改为 ['0'] 并将所有 ['t'] 改为 ['1']
    或者['False']改为['0']及['True']改为['1']
  5. text字段不能设置unipue,需改为varchar(255)
  6. 注意sqlite是不区分类型的,所以有些整形字段和text字段要修改配合mysql。
  7. 默认设为CURRENT_TIMESTAMP的字段类型一定为TIMESTAMP。

将修改完的文件保存。

3.MySQL导入

 用顺手的工具导入就可以了。

转载于:https://my.oschina.net/memorybox/blog/54330

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值