FMDBの使いかた
iOSを開発する上で使用するデータをどのように保存するかを考える際に、CoreDataという選択があります。これの使いかたを調べようかなと思ったけど、なんとなくSQLite3を使いたいと思い、調べているうちにFMDBというライブラリにたどり着きました。このライブラリを使用することで簡単にSQLite3が使用できます。 そんなFMDBライブラリの使い方をまとめてみました。
FMDBソースの取得
FMDBはオープンソースで開発されており、MITライセンスにより自由に使用することができます。また、ソースはgithubに公開されておりだれでも使用することができます。公開場所は以下のサイトです。
上記のURLよりソースをダウンロード、解凍して、プロジェクトに以下のソースを追加します。
- FMDatabase.h
- FMDatabase.m
- FMDatabaseAdditions.h
- FMDatabaseAdditions.m
- FMDatabasePool.h
- FMDatabasePool.m
- FMDatabaseQueue.h
- FMDatabaseQueue.m
- FMResultSet.h
- FMResultSet.m
※fmdb.m以外のソースを追加します。
「libsqlite3.0.dylib」ライブラリの追加
FMDBを使用するためには「libsqlite3.0.dylib」ライブラリが必要になります。これはSQLiteを使用するためのライブラリです。 Build phasesを開き、 Link Binary With Libraries を選択します。+をクリックして、「libsqlite3.0.dylib」を選択してAddを押して追加します。
ソースの記述
ヘッダのインポート
FMDBライブラリを使用するために「FMDatabase.h」をimportします。
#import "FMDatabase.h"
DBファイルの指定
使用するデータベースファイルを指定します。 「NSSearchPathForDirectoriesInDomains」で指定を行います。今回は「Documents」ディレクトリを使用して。「test.db」をデータベースファイルとしようと思いますので、次のようなコードを記述します。
NSArray *paths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory, NSUserDomainMask, YES); NSString *dir = [paths objectAtIndex:0]; NSString *db_path = [dir stringByAppendingPathComponent:@"test.db"];
FMDBインスタンスの作成
次のコードにより、FMDBのインスタンスを作成します。
FMDatabase *db = [FMDatabase databaseWithPath:db_path];
SQL命令の実行
実行するSQL命令を記述して、DBのオープン、SQLの実行、DBのクローズを行います。
NSString *sql = @"CREATE TABLE personals (id, name);"; [db open]; [db executeUpdate:sql]; [db close];
SQL命令の実行結果
実行結果はFMResultSetクラスのインスタンスに入ります。実行結果を「result」に入れる場合には次のようになります。
NSString *sql= @"SELECT id, name FROM personals;"; [db open]; FMResultSet *result = [db executeQuery:sql]; while ( [result next] ) { int ret_id = [result intForColumn:@"id"]; NSString *ret_name = [result stringForColumn:@"name"]; NSLog(@"results: id[%d] %@", ret_id , ret_name); } [db close];
その他
ざっとですがFMDBライブラリを使用することで簡単にSQLiteを使用することができます。これにより大量の保存したいデータ、参照したいデータなどを扱っていくことができるようになります。 Enjoy!!
詳細! Objective-C iPhoneアプリ開発 入門ノート Xcode5+iOS7対応
- 作者: 大重美幸
- 出版社/メーカー: ソーテック社
- 発売日: 2013/11/02
- メディア: 単行本
- この商品を含むブログ (3件) を見る
- 作者: 荻原剛志
- 出版社/メーカー: ソフトバンククリエイティブ
- 発売日: 2011/12/28
- メディア: 大型本
- 購入: 14人 クリック: 98回
- この商品を含むブログ (23件) を見る