スポンサーサイト
--.--.--.-- Posted in スポンサー広告
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

SQLiteをiPhoneアプリに組み込む 【実装編】
Wed.03.10.2012 Posted in plugin
0 comments 0 trackbacks
前回からずいぶん時間が経ってしまったがSQLiteのObjective-Cでの実装サンプルを紹介。
前回の記事はこちら

まずはDB接続の為のパスを指定。
(Application_Home)/Documentsのhoge.dbという意味。

・パス指定

NSArray* paths = NSSearchPathForDirectoriesInDomains( NSDocumentDirectory, NSUserDomainMask, YES );
NSString* dir = [paths objectAtIndex:0];
FMDatabase* db = [FMDatabase databaseWithPath:[dir stringByAppendingPathComponent:@"hoge.db"]];


詳しく知りたい方はこちらのページがオススメ。
http://d.hatena.ne.jp/ntaku/20110104/1294146555

シミュレータでは以下にDBが作成される。あらかじめ作成したDBを格納する場所もここ。
/Users/<<ユーザー名>>/Library/Application Support/iPhone Simulator/<<ビルド時のiOSのバージョン>>/Applications/<<アプリのGUID>>/Documents

実機の場合、Supporting Filesの中に入れておけばOK!

ではいろいろなSQL文を書いてみます。上のパス指定+以下を記述します。
・CREATE文

NSString* sql = @"CREATE TABLE IF NOT EXISTS hoge (id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT);";

[db open];
[db executeUpdate:sql];
[db close];


・INSERT文

NSString* sql = @"INSERT INTO hoge (name) VALUES (?)";

[db open];
[db executeUpdate:sql, @"名前"];
[db close];


・UPDATE文

NSString* sql = @"
UPDATE hoge SET name = ? WHERE id = ?";

[db open];
[db executeUpdate:sql, @"名前",10];
[db close];


・SELECT文

NSString* sql = @"SELECT id, name FROM hoge;";

[db open];
FMResultSet* results = [db executeQuery:sql];
NSMutableArray* hogeNameList = [NSMutableArray array];;

while( [results next] )
{
[hogeNameList addObject:[results stringForColumn:@"name"]];
}
[db close];


・DELETE文

NSString* sql = @"DELETE FROM hoge WHERE id = ?";

[db open];
[db executeUpdate:sql, [NSNumber numberWithInteger:14]];
[db close];

Theme: プログラミング « コンピュータ

« iPhone5対応 【iTunes connect編】 | Home | Xcodeのショートカット »

comments

コメントの投稿


管理者にだけ表示を許可する

trackback


この記事にトラックバックする(FC2ブログユーザー)

topBack to TOP

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。