1.SQLite導出
可以使用各種工具導出庫,我使用FireFox的SQLite的管理插件SQLite Manager。
使用SQLite Manager插件打開數據庫(.db .sqlite3)文件,選擇導出。將整個庫文件導出為.sql查詢語句。
2.SQL語句兼容性修改
為了保證SQL語句的兼容,需要將SQLite的特有的格式,修改為MySQL的格式。下面為我總結的一般規則(下面的方括號應被忽略):
www.2cto.com
將 ["] 改為 [`]
也可以移除全部的 ["] ,但是如果有一些函數名作為字段名(e.g. regexp)時將會遇到錯誤
需要注意一些默認為 ["] ,其作用不在字段上的,不應被替換而應當被保留
移除所有的 [BEGIN TRANSACTION] [COMMIT] 以及 任何包含 [sqlite_sequence] 的(整)行
將所有 [autoincrement] 改為 [auto_increment]
將所有 ['f'] 改為 ['0'] 並將所有 ['t'] 改為 ['1']
或者['False']改為['0']及['True']改為['1']
text字段不能設置unipue,需改為varchar(255)
注意sqlite是不區分類型的,所以有些整形字段和text字段要修改配合mysql。
默認設為CURRENT_TIMESTAMP的字段類型一定為TIMESTAMP。
將修改完的文件保存。
3.MySQL導入
用順手的工具導入就可以了。
作者 memorybox