我想在 iPhone 上使用预先存在的 MySQL 数据库开始使用 Core Date。将 MySQL 数据库传输到 SQLite 的最简单方法是什么?
我试过使用 SQLite Migrator,但我不知道在哪里可以找到 Mac 的 ODBC 驱动程序(Snow Leopard)。我发现http://www.ch-werner.de/sqliteodbc/似乎有驱动程序,但它们适用于 Power PC。
如果有人可以给我一个演练,或者告诉我最好的工具是什么,我将不胜感激。
谢谢。
我想在 iPhone 上使用预先存在的 MySQL 数据库开始使用 Core Date。将 MySQL 数据库传输到 SQLite 的最简单方法是什么?
我试过使用 SQLite Migrator,但我不知道在哪里可以找到 Mac 的 ODBC 驱动程序(Snow Leopard)。我发现http://www.ch-werner.de/sqliteodbc/似乎有驱动程序,但它们适用于 Power PC。
如果有人可以给我一个演练,或者告诉我最好的工具是什么,我将不胜感激。
谢谢。
也许最简单的方法是使用mysqldump将 MySQL 数据库中的原始 SQL 转储到文本文件中,然后使用sqlite3_exec()函数执行该 SQL 以填充 SQLite 数据库。
你看过这个 Perl 脚本吗?我没有使用它——只是快速搜索了 mysql 到 sqlite 的迁移,它就弹出来了。
编辑(在您回复我的评论后):
反方向在这里处理。
如果您要重复执行此操作并且如果要发生数据结构更改,那么使用Django之类的东西可能会更好(尽管以一种非常骇人听闻的方式)。有了它,我会:
# This three lines are done once
django-admin.py startproject mymigrationproject
cd mymigrationproject
./manage.py startapp migration
# The following lines you repeat each time you want to migrate the data
edit settings.py and make the changes to connect to MySQL
./manage.py inspectdb > ./migration/models.py
edit ./migration/models.py to reorder tables (tables in which other tables depend on top)
mkdir fixtures
./manage.py dumpdata migration > ./fixtures/data.json
edit settings.py and make the changes to connect to SQLite
./manage.py syncdb
./manage.py loaddata ./fixtures.data.json
以下是转换器列表:
即你可以这样做:
您可以使用来自http://www.sqlmaestro.com/products/sqlite/datawizard/的试用版
它完全可以使用 30 天。
您可以从 Actual Technologies 获得适用于 Mac OS X 的 ODBC 驱动程序。
要连接到 MySQL,您需要他们的 ODBC Driver for Open Source Databases:
http://www.actualtech.com/product_opensourcedatabases.php
(免责声明:我是 SQLite Migrator 的作者)
有一个免费的 ETL 产品可用于将数据从一个数据库迁移到另一个数据库。看看:http ://www.talend.com/index.php
祝你好运!
为了进行转换,我最终使用了来自 Actual Access 的 ODBC。我想我将它与SQLite Migrator结合使用。我从不喜欢这种方式,尽管它总是很笨重。这两款软件也很昂贵,最终花费了大约 80 美元。
如果我不得不再次这样做,我会购买SQLabs的 SQLiteConverter。我使用他们的 SQLite Manager,虽然它有很多界面问题,但对于数据库软件来说还不错。