1

我需要创建一个与远程数据库链接的应用程序!mysql是最好的解决方案吗?Sqlite 是唯一的本地解决方案吗?

我使用以下方法,我想知道它是否是最好的方法!

NSString *evento = @"1";
NSString *filtro = @"CAC2";

NSString *strURL = [NSString   
stringWithFormat:@"http://www.xxxxxxx.com/Scripts/Evento/WIGriceviTipo.php?  
evento=%@&filtro=%@",evento, filtro];

NSData *dataURL = [NSData dataWithContentsOfURL:
               [NSURL URLWithString:strURL]];

NSString *strResult = [[NSString alloc] initWithData:dataURL   
encoding:NSUTF8StringEncoding];

strResult = [strResult stringByTrimmingCharactersInSet:[NSCharacterSet       
whitespaceAndNewlineCharacterSet]];

mostra.text=strResult;

NSLog(@"%@", strResult);
4

3 回答 3

4

为什么不使用Core Data?我做了很多远程数据库交互,并使用 CD 作为本地存储,只是将所有数据传递给一个 Web 服务,该服务对其进行消化,检查数据完整性,然后将数据传递给数据库。

Core Data学习曲线比您想象的要容易得多,如果您使用像Magical Record这样的第三方库,那就更容易了。

就 Web 服务器数据库而言,如果您使用基于 Linux 的平台,MySQL 是最佳选择 (IMO),如果您使用 Windows Server 路线,SQL Server 将成为一个选择。

于 2012-10-26T11:53:27.927 回答
0

不应远程使用 SQLite。来自文档:

如果您有许多客户端程序通过网络访问公共数据库,则应考虑使用客户端/服务器数据库引擎而不是 SQLite。

在您的代码中,您可以将此请求设为异步,因为在检索数据时您可能会阻塞主线程。您可以使用GCD和封闭或使用dataWithContentsOfURL类代替。dispatch_asyncNSURLConnection

于 2012-10-26T11:25:17.233 回答
0

不同版本的SQLLite可以远程使用,在移动应用开发中最好有SQLLite数据库,因为它占用内存少来存储数据。

请访问http://www.sqlite.org/cvstrac/wiki?p=SqliteNetwork

于 2012-10-26T11:51:59.167 回答