sqliteのLIKE演算でインデックスを使う方法 ― ありえるえりあ sqliteで、次の条件を満たしたselectでインデックスが使われていませんでした(explainで確認)。 インデックスを張ったカラム LIKE '/foo/bar/%'のように%が最後 次のページにsqliteがLIKE演算子に対しインデックスを使う条件が書いてありました。 http://www.sqlite.org/optoverview.html case-sensitive=OFFの時、sqliteは上記のようなLIKE演算に対して、インデックスを使ってくれません。 張ったインデックスの collating sequence は何でしょうか?どこでも何も指定しなければデフォルトの BINARY ですが、case-insensitive な演算に使うためには NOCASE でないといけません。 また、インデッ
以前から作っている電車位置マップに関して、時刻表(ダイアグラム)データはテキストファイルとして保存し、起動時にパースして使っていたのだが、かなり大量のデータになるのでこれでは扱いが大変。 今後iPhoneで色々とデータベースを扱う機会は増えそうなので、ここで使い方について調べてまとめておこうかと思う。 まず初期準備 Frameworksにlibsqlite3.0.dylibを追加しておく。 データベースを扱うクラスのヘッダにて、をインポート(#import )し、メンバ変数にsqlite3型のポインタ変数を定義(sqlite3 *database)する。 次に、データベースへの書き込みを可能にするために、リソースディレクトリにあるデータベースファイルをユーザーが書き換え可能なディレクトリ(NSDocumentDirectory)に必要に応じてコピーする。 // まず、同じファイルが既にユー
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く