和FMDB一样,这也是一个sqlite的objective-c的封装库,接口和FMDB一样,此外还支持sql的预编译以及参数绑定。
首先,需要将PlausibleDatabase.framework以及libsqlite3.0.dylib加入到项目中。
头文件:
#import <UIKit/UIKit.h>
@class PLSqliteDatabase;
@interface sqliteViewController : UIViewController {
PLSqliteDatabase *db;
}
@property (nonatomic, retain) PLSqliteDatabase *db;
- (NSArray *)getBooks;
@end
实现文件:
#import "sqliteViewController.h"
#import <PlausibleDatabase/PlausibleDatabase.h>
@implementation sqliteViewController
@synthesize db;
- (id)init
{
if (self = [super init]) {
NSString *path = [[NSBundle mainBundle] pathForResource:@"CaseDatabase" ofType:@"sqlite"];
PLSqliteDatabase *_db = [[PLSqliteDatabase alloc] initWithPath:path];
self.db = _db;
[_db release];
if (![db open])
NSLog(@"Could not open database");
}
return self;
}
- (NSArray *)getBooks
{
NSMutableArray *books = [[NSMutableArray alloc] initWithCapacity:0];
id<PLResultSet> results = [db executeQuery:@"SELECT `ID`,`TITLE`,`COVER`,`DOCTOR` FROM `BOOKS` ORDER BY `UPDATE_TIME` DESC"];
while ([results next]) {
NSDictionary *row = [[NSDictionary alloc] initWithObjectsAndKeys:
[NSNumber numberWithInt:[results intForColumn: @"ID"]], @"ID",
[results stringForColumn:@"TITLE"], @"TITLE",
[results stringForColumn:@"COVER"], @"COVER",
[results stringForColumn:@"DOCTOR"], @"DOCTOR", nil];
[books addObject:row];
NSLog(@"%@", books);
[row release];
}
[results close];
return books;
}
- (void)viewDidLoad {
[super viewDidLoad];
[self init];
[self getBooks];
}
- (void)dealloc {
[super dealloc];
}
@end
分享到:
相关推荐
5. **事件处理**:学习如何响应用户触摸和手势,以及如何在应用间进行导航。这涉及到UIControl对象、手势识别器(Gesture Recognizers)以及导航控制器(Navigation Controller)的使用。 6. **数据持久化**:iOS...
在iOS操作系统中,旧版应用下载是一个常见的需求,特别是在用户希望保持特定软件兼容性或避免新版本中的问题时。标题“iOS旧版应用下载v5.0.zip”表明这是一个资源包,提供了iOS系统旧版本(v5.0)的应用程序。这种...
在iOS 11应用开发中使用Swift 4.0,可以让开发者享受到更快速的编码体验以及对现有Swift 3.0代码更好的兼容性。 进行iOS 11应用开发需要一些基础的系统和软件支持。首先,需要在Mac电脑上安装MacOS 10.12.6操作系统...
开发者可以创建一个纯HTML5的Web应用,然后在iOS应用中通过WebView加载。 ### 关键技术 1. **HTML5的新特性**:如离线存储(localStorage)、拖放功能、媒体元素(video/audio)、canvas绘图、geolocation定位等,...
在IT行业中,尤其是在移动应用开发领域,iOS操作系统不断更新迭代以提供更好的性能和新功能。然而,有时用户可能需要回溯到旧版本的应用程序,这可能是由于兼容性问题、新版本的问题或者是用户对旧功能有特定需求。...
在本教程中,我们将深入探讨“iOS 9.1应用开发基础”,这是一门适合初学者的课程,旨在帮助你掌握Apple的移动操作系统上的应用程序构建技术。iOS 9.1是苹果公司为iPhone、iPad以及iPod touch设备推出的一个重要版本...
在Shutterbug中,你会学习如何使用UIImagePickerController来集成系统相机,让用户能够直接在应用内拍照。同时,还要了解如何使用UIImageView显示所拍的照片,并实现滑动浏览功能。 接下来,课程会介绍Core Image...
这个项目对于初学者来说是一个宝贵的参考资料,因为它展示了如何在实际环境中应用iOS开发的技术和概念。 【描述】斯坦福iOS7应用开发assignment 3源代码提供了已完成的大部分作业要求。这个源代码库包含了一个或多...
这个"IOS微信移动应用扫码登录DEMO"就是一个典型的示例,它展示了如何在iOS应用中集成微信SDK,实现在应用内部生成二维码,并通过微信客户端扫描进行登录。 首先,我们需要了解的是微信开放平台。微信开放平台提供...
进而分析使用这些工具时的思考方式和碰到问题时的解决思路,最后以社交应用消息拦截、iOS电话相关操作等4个极具代表性的实例总结iOS应用逆向工程在实战中发挥的关键作用。本书先授你以渔,再授你以鱼,多处独家内容...
在这个案例中,这个ZIP文件包含了iOS旧版应用的下载文件,可能是通过某种方式从App Store或其他来源获取的。 "ios itunes"标签表明这个话题与iOS设备的管理工具iTunes有关。iTunes曾经是苹果用户管理和同步iOS设备...
它可以通过`CFBundleIconFiles`键在应用的Info.plist文件中定义,或者在Xcode的项目设置中指定。 3. **应用名称**: 用户看到的应用在SpringBoard(iOS主屏幕)上的显示名称,通常与Info.plist文件中的`...
在iOS系统中,用户可以使用“选择其他应用”功能来打开和处理各种类型的文件,而不仅仅局限于默认的应用程序。这个特性使得iOS更加灵活,让用户能够根据个人需求利用不同应用的功能来处理同一份文件。以下是对这个...
本主题将深入探讨"database"和"PlausibleDatabase框架"在iOS开发中的应用。 SQLite是一个开源的关系型数据库管理系统,它不需要单独的服务器进程,可以直接嵌入到应用程序中。iOS开发者经常使用SQLite来处理本地...
开发者需要了解如何在应用中存储数据,这包括使用iOS的键值编码、键值观察和核心数据等技术来持久化数据。键值编码是一种通过键的名称来访问对象属性的机制,而键值观察则是一种当对象属性改变时获得通知的机制。...