Realm(レルム) …
SQLite とは違う…モバイル用DB…?
しかも読み方が全くわからず 「リアルム」 と読んでいました… 英語力ゼロ… ^^;
「iOSの CoreData よりいい」、「動作がとても軽量」、「組みやすい」 … と、ググってみたところ良さげな印象 ^^
Realmに触れる機会をいただいたことにとても感謝しつつ、ググりながら実装ww
CoreData について全く知識がなくwww SQLを使わないデータベース?に戸惑いを隠せませんでしたwww ^^;
モデルとなるクラスのインスタンスを作って、realmのインスタンスでadd で追加は終了?そんなバカな…。
リファレンスに従って モデルにデータを追加するメソッドをこんな感じで実装してみた。
Realmファイルを開いて確認してみると、本当に追加されてる。すごい…。
しばらく進めてみて、最初どうしたらいいかわからなかった点はこんな感じでした。
- 追加時に自動で設定されるプライマリキーはどうしたらいいか
- モデルの構成変更できるのか
- リレーションはどうすればいいのか
- 任意のテーブル結合した問い合わせはできるのか
まず、プライマリキーについては下記サイトの手法を真似しましたww ^^;
まんまこんな感じですね。 ^^;
モデルの構成を変更したら…何もしないと アプリが起動しなくなる…。最初どうしたらいいかわからず手を焼いていました。
… リファレンスのままとりあえずやってみるか…え?何もしなくていいん?…まじかw ^^
リレーションも簡単でした…。
Listを用意して append するだけ!? … マジやん…。
大まかに以下の感じで実装しました。
ただ、LinkingObjects … どう設定したらいいのだろう…これはまだよくわからん… ^^;
クエリーの発行は filterメソッドで where句、 sortメソッドでOrderBy句 はできるけど、テーブルの結合は…できそうにないのかな…^^;
ただ、集計はできるみたいなので、それは、またの機会に試してみたいなー ^^