【发布时间】:2012-11-15 18:32:20
【问题描述】:
背景
我一直在使用基于相同 sqlite 数据库结构但以不同语言运行的几个移动应用程序。你猜对了,涉及到 ObjC(iOS) 和 Java(Android)。出于数据共享和互操作性的考虑,我想对这个模式进行标准化(有大小写差异、表命名差异、结构差异等)。作为奖励,我希望能够将某种模式表示检查到源代码控制中并控制模式的不同版本。
问题
虽然我了解创建的 sqlite 数据库实例包含架构信息,但我不相信分发空白 sqlite 数据库是共享该架构的最佳方式。例如,Android 提倡使用 a helper 以编程方式创建和/或升级 sqlite 数据库。
但如果我有代码构建/升级数据库,那么它似乎会强制维护每种语言的编程模式。
问题
是否有其他选项或方法(除了预先构建的、包含元数据的空白 sqlite 数据库)可以在多种语言之间共享和标准化架构?那些可能是什么?这些选项可以存储在源代码管理中吗?可以在多个平台之间实现自动化吗?
非常感谢任何见解。我们可以与一次性版本一起跛行,但必须有更好的方法......
【问题讨论】:
标签: database sqlite language-agnostic schema