ブックマーク / ovjang.hatenadiary.org (2)

  • iPhoneでSQLite3を使う11(DBテーブルからUITableViewを表示) - 黒色槍騎兵のiPhoneアプリ開発日記

    DBテーブルからのUITableViewに表示する際に、データ数が多い場合に全部読み取るとメモリ消費も大きくなりますし、データに対して処理をする場合は時間もたくさんかかってしまいます。そのため、一度に読む量を区切り順番にページ送りして表示するようにページングを実装することが一般的です。 SQLite3でもありがたいことに、ページングをするためSELECT文にLIMIT句とOFFSET句が用意されています。 SELECT 列,列… FROM TABLE名 WHERE 条件 LIMIT 行数 OFFSET 開始行;OFFSET句で開始行(何行目から取得するか)、LIMIT句で取得する行数を指定することができます。 それでは、実際に例を示すます。例では、ユーザテーブルより名前の読み順にページングを行います。 並び替えはORDER BY句を使います。列名を指定することで並び替えをしてくれます。ペー

    iPhoneでSQLite3を使う11(DBテーブルからUITableViewを表示) - 黒色槍騎兵のiPhoneアプリ開発日記
  • iPhoneでSQLite3を使う10(iPhoneアプリリリース後のテーブルの構造変更) - 黒色槍騎兵のiPhoneアプリ開発日記

    iPhoneアプリをリリース後に、機能追加でテーブルの構造を変更する必要が生じました。sqlite3のDBファイルは、初回のアプリインストール時に作成されて、アプリをバージョンアップした際でも上書きされません。 ※アンインストールすると、DBファイルも消えます。逆にアンインストールしなければ前のままです。シミュレータも同様の動きなので開発中は、構造を変えながら進めることもあるかと思いますので注意してください。 FollowManでは、データは毎回クリアするので過去のデータは不要です。アプリ起動時に、下記のようにテーブル削除して新しい構造で作り直す処理を、初回起動時に入れることで対応しました。 -(void)dbInitialize { int wasSucceeded; // テーブルの削除 wasSucceeded = sqlite3_exec(db_, "DROP TABLE user

    iPhoneでSQLite3を使う10(iPhoneアプリリリース後のテーブルの構造変更) - 黒色槍騎兵のiPhoneアプリ開発日記
  • 1