我以前在iPhone应用程序中使用过sqlite3,但是如何查询位于我网站上的外部SQL数据库?
最佳答案
您的应用程序不执行实际查询。正确的方法是为您的网站设置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服务一样工作,返回您所请求的数据。
关于iphone - 如何查询外部SQL数据库-iPhone应用程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6586437/