ハチマン | 八幡山と育児、ライフスタイル、ITの情報ブログ

データベースを作ってiOSアプリに組み込んでみた ~#2

データベースを作ってiOSアプリに組み込んでみた ~#2

こんにちは!クラウドナインアップスのショウです!

前回の#1ではターミナルでデータベースを作成し、Litaで確認しました。
今回はそのデータベースをXcodeに組み込んでデバックエリアに表示させてみたい思います。
FMDBをセット
SQLiteをiOSで扱いやすくしてくれるFMDBというライブラリを使います。
FMDBはGitHubからファイルをダウンロードして下さい。
zipを解凍して
[fmdb-master / src / fmdbフォルダ]の中に
あるファイル群をXcodeに追加します。

スクリーンショット 2015-05-07 13.06.28

更に、[TARGETS] -> [Build Phases] -> [Link Binary With Libraries] から
libsqlite3.0.dylib をプロジェクトに追加します。
スクリーンショット 2015-05-07 13.25.13
そして前回作成したデータベースを使うので
作成したデータベースをプロジェクトにコピーして追加してください。
fmdb_screenshot
FMDBを使う
ここからはソースコードを書いていきます。
FMDBを使いたいところにFMDatabase.hをインポートしてください。
ViewController.m

 

データベースから取得した情報を格納するためにNSStringを用意しておくと良いでしょう!

 

今回はviewDidLoadに書きましたが、他にも色々とコードを書く場合には

 

などの専用のメソッドを容易しておくといいと思います。

(1) データベースを作成するためのパスとファイル名を取得します。

(2) 指定されたデータベースがちゃんとあるか確認し、無ければコピーしますが今回はデータベースをプロジェクトにコピーして追加しているのでエラーになることは無いと思います。

(3) FMDBのクラスのインスタンスを作成します。

(4) SELECT文を使い、データベースから取得したいデータ(カラム)を選択します。データを取得するには どのテーブルの、どのカラムの値を取得するのかを指定します。

(5) FMResultSet – next を呼ぶことで、取得された行が順に選択されます。行が存在すればYES、無ければNOが返されるので、これをwhile文の条件式にすることで、すべての行が終わるまでループ処理されます。

実行(ビルド)するとこんな風に表示されます。
fmdb_screenshot2
ちなみに…
(4)のSELECT文ですが行を指定することもできます。
例えば、

のように後ろにwhere句を付けることで
「[quiz] というテーブルの [ans2] の列の中で[30]というカラム値が含まれている行を取得」
ということになり実行(ビルド)すると

fmdb_scshot_3
[ans2]の列の中で[30]というカラム値が含まれている4行目のデータが取得されました。
以上で終わりです \(^^)/
データベースを取り入れる事で、アプリ作成の幅が広がりますね。
途中でつまづいたり、さらにステップアップしたい方は
アプリ開発スクール「クラウドナインアップス」へお気軽にご相談ください。
スクリーンショット 2015-03-09 11.28.56

参考文献

参考にさせてもらいました。ありがとうございます。
iPhone / Androidアプリ開発の簡単説明 -> DBの内容を表示させる具体的な方法
~ けんちんとん の10分で分かるアプリの作り方 ~

ハチマンブログは今なん位? 関東情報ブログランキング

コメントをどうぞ

*
*
* (公開されません)

世田谷区八幡山から育児ライフスタイルITに関する情報をブログでお届けします。
サイトマップ
Return Top