我之前在iPhone应用程序中使用过sqlite3,但是如何查询到我网站上的外部SQL数据库呢?
答案 0 :(得分:9)
您的应用不会执行实际查询。正确的方法是为您的网站设置API,以便网站进行查询并将相应的数据返回给您的应用。
您的API通常包含许多返回为您的应用格式化的数据的端点。例如,您可以创建一个PHP或Python页面,查询数据库以查找给定用户的所有帖子,并以JSON或XML编码的数组返回它们。 (数据格式完全取决于您。有一些框架可以解析iOS可用的两种格式。)
例如,假设您的服务器上有一个PHP页面,它返回当周的当前日期。您的PHP看起来像这样:
<?php
echo date("l");
?>
让我们假设您已将其保存为http://example.com/dayoftheweek.php
我建议使用ASIHTTPRequest框架从您的应用中执行HTTP请求。也就是说,让我们继续并建立与PHP页面的连接。假设您在项目中设置了所有ASIHTTPRequest,请参阅以下内容:
NSURL *url = [NSURL URLWithString:@"http://example.com/dayoftheweek.php"]
ASIHTTPRequest *request = [[ASIHTTPRequest alloc] initWithURL:url];
[request setDelegate:self];
现在,您需要实现ASIHTTPRequest Delegate方法,以解析返回的数据。处理已完成请求的方法如下所示:
- (void)requestFinished:(ASIHTTPRequest *)request{
//Here you would store the returned data and/or parse it
}
要实现API,您的PHP页面会更复杂。您将构建一个更复杂的请求,传入变量等,PHP页面将像常规Web服务一样,返回您请求的数据。
答案 1 :(得分:0)
我认为你的意思是MySQL。通常从外部禁止访问MySQL数据库,这是有充分理由的。您可能希望编写一个访问数据库的API。您的iPhone应用程序将与此API通信以插入和检索数据。
答案 2 :(得分:0)
@StanLe:您不能直接在本机应用程序中使用SQL Server或mySQL。但是,您可以通过以下方式将应用程序与外部SQL数据库进行通信。
这是example
另一个非常Simple Example
如果还有任何困惑,请回信。
答案 3 :(得分:0)