【问题标题】:iOS - Server databaseiOS - 服务器数据库
【发布时间】:2014-09-18 03:12:45
【问题描述】:
我正在开始一个新的 iOS 项目,但我真的不知道如何进行。我的应用程序将成为医生的个人议程,它将包含耐心的信息表,也许还有一些处方。我认为它是一个非常复杂的应用程序,拥有庞大的数据库。
如果我只将医生输入的信息保存在应用程序的本地内存中,我知道我应该使用 SQL-lite 数据库。但我正在考虑同步为多个设备存储的信息,因此必须将数据发送到服务器。
我的问题来了:我应该将医生写入的信息保存到应用程序内的数据库中并将其发送到服务器吗?如果进行了更改,请要求返回。或者我应该将信息导出为 JSON 并发送,以便服务器可以将其保存到数据库中?
或者也许这是我可以做到这一点的另一种方式?
【问题讨论】:
标签:
mysql
ios
sql-server
xcode
sqlite
【解决方案1】:
你不应该在服务器和客户端之间来回发送数据库,因为这是非常错误的做法
1)Sqlite 数据库的大小比任何json 都大,因此它消耗更多带宽。来回发送是不合适的。
2)Json 非常轻量级,因此您的客户端和服务器的通信开销更少。
3)通过使用Sqlite,您使服务器依赖于客户端,因为两者都必须使用相同的架构,并且您的服务器需要使用 sqlite,在某些情况下它可能不合适。
4)以后用json扩展服务很容易,服务器可以有自己的设计。
5)如果您的客户端需要部分信息,则服务器必须发送整个数据库并仅从该数据库中获取相关信息。
解决方案:
1)您应该让 api 和客户端访问这些 api 并使用 json 并执行适当的操作。
2)如果你想在iOS设备之间发送数据,你可以考虑core data和iCloud。使用icloud和core data有点笨拙,但如果它符合你的需要,你可以考虑它