Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/64.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在iOS中直接连接到远程MySQL数据库_Mysql_Ios_Database - Fatal编程技术网

在iOS中直接连接到远程MySQL数据库

在iOS中直接连接到远程MySQL数据库,mysql,ios,database,Mysql,Ios,Database,我正在开发一个iPhone应用程序。我想从远程服务器获取数据库并在我的应用程序中显示它,因此我想知道是否应该直接连接到远程MySQL数据库,或者是否建议使用第三层,如PHP、ASP.Net、,等从远程数据库检索数据。您需要创建一个web服务,该服务将公开一组API,然后由iPhone应用程序使用这些API推/拉数据。然后,您可以选择将数据本地缓存(在iPhone上)到sqlite3数据库中。最常见的数据传输格式是JSON和XML。您需要创建一个web服务,该服务将公开一组API,然后供iPhon

我正在开发一个iPhone应用程序。我想从远程服务器获取数据库并在我的应用程序中显示它,因此我想知道是否应该直接连接到远程MySQL数据库,或者是否建议使用第三层,如PHP、ASP.Net、,等从远程数据库检索数据。

您需要创建一个web服务,该服务将公开一组API,然后由iPhone应用程序使用这些API推/拉数据。然后,您可以选择将数据本地缓存(在iPhone上)到sqlite3数据库中。最常见的数据传输格式是JSON和XML。

您需要创建一个web服务,该服务将公开一组API,然后供iPhone应用程序用于推/拉数据。然后,您可以选择将数据本地缓存(在iPhone上)到sqlite3数据库中。最常见的数据传输格式是JSON和XML。

虽然您可以在iOS上使用MySQL客户端库,但我建议使用“第三层”中间方法的原因有几个:

  • 安全性-是否确实要在应用程序中嵌入数据库、用户名和密码详细信息?(即使是“仅选择”帐户。)

  • 性能-如果可能的话,为什么不缓存一些结果数据,而不是仅仅依靠您正在使用的MySQL数据库引擎。这种缓存可以在两端进行(脚本语言和iOS设备上的本地存储,供脱机使用)

    例如,根据负载/数据更改的频率,您可以在web服务级别缓存数据(可能是通过将数据存储在memcached或类似文件中,而不是执行查询并每次命中数据库服务器)。同样,一旦您将数据从web服务提取到 设备,您可以将其缓存在那里。(可能通过本地SQLite) 存储,或仅序列化阵列(视情况而定)

    此外,如果您想要使用多个后端数据库服务器,从应用程序的角度来看,这将是透明的

  • 维护-如果您通过JSON或XML将相关数据传送到iOS应用程序,您将允许对数据库架构进行合理程度的更改,而不会破坏已部署的任何现有应用程序


  • 虽然您可以在iOS上使用MySQL客户端库,但我建议您使用“第三层”中间方法的原因如下:

  • 安全性-是否确实要在应用程序中嵌入数据库、用户名和密码详细信息?(即使是“仅选择”帐户。)

  • 性能-如果可能的话,为什么不缓存一些结果数据,而不是仅仅依靠您正在使用的MySQL数据库引擎。这种缓存可以在两端进行(脚本语言和iOS设备上的本地存储,供脱机使用)

    例如,根据负载/数据更改的频率,您可以在web服务级别缓存数据(可能是通过将数据存储在memcached或类似文件中,而不是执行查询并每次命中数据库服务器)。同样,一旦您将数据从web服务提取到 设备,您可以将其缓存在那里。(可能通过本地SQLite) 存储,或仅序列化阵列(视情况而定)

    此外,如果您想要使用多个后端数据库服务器,从应用程序的角度来看,这将是透明的

  • 维护-如果您通过JSON或XML将相关数据传送到iOS应用程序,您将允许对数据库架构进行合理程度的更改,而不会破坏已部署的任何现有应用程序


  • 对必须使用API从远程数据库获取数据。它可能是XML或JSON格式的。必须使用API从远程数据库获取数据。它可能是XML或JSON格式,我想直接连接到远程数据库,因为我的数据库每天都会更新,所以你是在告诉我获取数据并存储在本地应用程序中吗?什么是缓存可以在两端进行?我想直接连接到远程数据库,因为我的数据库每天都会更新,所以你是在告诉我获取数据并存储在本地应用程序中吗?什么是缓存可以在两端进行?你能再解释一下吗