代码之家  ›  专栏  ›  技术社区  ›  Bryan

核心数据和MySQL

  •  2
  • Bryan  · 技术社区  · 15 年前

    如何创建与MySQL数据库同步的核心数据应用程序?

    我应该实现一个SQL Lite层并尝试以这种方式与MySQL同步吗?

    或者运行Web服务更好?不过,我想利用核心数据建模。

    有没有办法使用LINQ?我爱林克。

    4 回复  |  直到 11 年前
        1
  •  3
  •   Louis Gerbarg    15 年前

    如果您使用的是coredata,则不会直接访问它的底层备份存储(实现自定义原子存储除外)。如果要与MySQL同步,则需要访问MySQL数据库(直接通过libmysql或通过应用服务器),然后将该数据整理到托管对象中。

    换句话说,您的coredata模型是完全本地的,您应该只通过coredata apis访问它。如何获取数据是一个完全独立的问题,底层存储可能是sqlite,这与此无关。

    不,在iPhone上不能使用LINQ。我想在将来的某个时候,通过MonoTouch可能是可能的,但是除非你正在编写一个完整的MonoTouch应用程序,否则我怀疑来回排列对象以使用它对于Objective-C代码来说是非常不自然的。

        2
  •  5
  •   user439441    14 年前

    我在日常工作中是一个php/mysql程序员,我能想到的从mysql中获取数据的最简单的方法是与php web服务器建立HTTP连接,该服务器以plist xml格式返回数据。然后我可以很容易地用plist数据填充一个nsarray。

    例如,我在应用程序中就是这样做的:

    NSURL *url = [NSURL URLWithString:@"http://myphpwebsite.com/products"];
    NSArray *products = [[NSArray alloc] initWithContentsOfURL:url];
    

    然后我在应用程序中使用了一系列产品,并坚持使用核心数据。

    我总是建议人们一起使用PHP、Apache和MySQL。它们在后端工作得很好,几乎无缝。例如,我可以使用PHP很容易地从MySQL中获取数据。然后我可以用PHP将这些数据转换成iPhone应用程序使用的plist XML格式。

        3
  •  2
  •   Lee Barney    14 年前

    我有用于将核心数据与后端上的任何数据库同步的代码。它使用Web服务并通过JSON进行通信。它不仅与数据库无关,而且不关心数据结构是否不同。

    它将包含在下一个版本的QuickConnectFamily框架中。 http://www.quickconnectfamily.org

    如果在发布之前需要代码,请通知我。

        4
  •  1
  •   Glenn    13 年前

    还可以看看restkit.org 当我问一个类似的问题(但我使用的是核心数据)时,我被指出来了,它看起来非常有前途!