Your SlideShare is downloading. ×
0
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Android Hacks - Hack31
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Android Hacks - Hack31

656

Published on

「Android Hacks ―プロが教えるテクニック & ツール」(株式会社ブリリアントサービス 著)を教材とした勉強会でのまとめ資料です。 …

「Android Hacks ―プロが教えるテクニック & ツール」(株式会社ブリリアントサービス 著)を教材とした勉強会でのまとめ資料です。

http://www.oreilly.co.jp/books/9784873114569/

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
656
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
3
Comments
0
Likes
1
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. ANDROID HACKS #31 SQLITE を使う 担当:かわらたん Twitter : @pfkawara Blog : http://kawara-tan.blogspot.com/ 09/19/11
  • 2. この資料について <ul><li>この資料は下記の本をベースに勉強会で作成した資料です。 </li></ul><ul><ul><li>『 Android Hacks 』(株式会社ブリリアントサービス著、オライリー・ジャパン刊) </li></ul></ul><ul><li>この本の紹介ページが下記にあります。 </li></ul><ul><ul><li>http://www.oreilly.co.jp/books/9784873114569/ </li></ul></ul>09/19/11
  • 3. アジェンダ <ul><li>SQLite とは ( 本に具体的説明無し ) </li></ul><ul><li>DB の作成 </li></ul><ul><li>テーブルの作成 </li></ul><ul><li>DB のアップデート </li></ul><ul><li>query, insert, update, delete 実行 ( 本に具体的説明無し ) </li></ul><ul><li>感想: SQLite 知らない人には分かりづらい章 </li></ul><ul><li>    サンプルソースに対する説明が少ない ( どの章にも言えるけど… ) </li></ul>09/19/11
  • 4. 0. SQLite とは 09/19/11
  • 5. 0. SQLite とは <ul><li>Oracle や MySql と同じデータベース管理システム </li></ul><ul><ul><li>軽量である ( インストール簡単、すぐに使える ) </li></ul></ul><ul><ul><li>アプリケーションに組み込まれて使われる </li></ul></ul><ul><ul><li>W3C による次世代 HTML(HTML5) の WebSQLDatabase の方言として採用されている </li></ul></ul><ul><ul><ul><li>ただし、 WebSQLDatabase の仕様決めは去年秋に中止 </li></ul></ul></ul><ul><li>公式サイト </li></ul><ul><ul><li>http://www.sqlite.org/ </li></ul></ul><ul><li>参考サイト (SQLite 入門 ) </li></ul><ul><ul><li>http://www.dbonline.jp/sqlite/ </li></ul></ul>09/19/11
  • 6. 1. DB の作成 09/19/11
  • 7. 1. DB の作成 <ul><li>SQLiteOpenHelper クラスを extends して作る </li></ul>09/19/11
  • 8. 1. DB の作成 <ul><li>コンストラクタを呼ぶと、 DB 作成に必要な設定ができる </li></ul><ul><li>DB が作られると onCreate() が呼ばれる </li></ul><ul><ul><li>例では create 文を実行してテーブルを作っている </li></ul></ul>09/19/11 DB を利用する Activity を渡してあげる
  • 9. 2. テーブルの作成 09/19/11
  • 10. 2. テーブルの作成 <ul><li>onCreate() の中でテーブルを作成する ( 前述のとおり ) </li></ul><ul><li>カラムの型 </li></ul>09/19/11 型 説明 例 TEXT 整数や浮動小数点を文字列に変換 column_name TEXT NUMERIC テキストを整数か浮動小数点に変換。変換できない場合は文字列を格納 column_name NUMERIC INTEGER 整数に変換 column_name INTEGER REAL 浮動小数点に変換 column_name REAL NONE 変換を行わない column_name NONE
  • 11. 2. テーブルの作成 <ul><li>カラムの制約 </li></ul>09/19/11 型 説明 例 PRIMARY KEY テーブル上のユニークなキー column_name integer PRIMARY KEY AUTOINCREMENT NOT NULL null を格納できなくする column_name text not null DEFAULT レコード追加時に格納されるデフォルトの値 column_name text DEFAULT ‘algnantoka’ UNIQUE 重複した値を格納できなくする column_name text UNIQUE AUTOINCREMENT 最後に格納された値 +1 をデフォルトとして利用する (PRIMARY KEY が integer のカラムのみ ) column_name integer PRIMARY KEY AUTOINCREMENT
  • 12. 3. DB のアップデート 09/19/11
  • 13. 3. DB のアップデート <ul><li>SQLiteOpenHelper のメンバである version が変更されると onUpgrade() が呼ばれる。 </li></ul>09/19/11
  • 14. 4. query, insert, update, delete 実行 09/19/11
  • 15. 4. query, insert, update, delete 実行 <ul><li>実行するにあたって </li></ul><ul><ul><li>query() 等のメソッドは SQLiteDatabase クラスで定義されている </li></ul></ul><ul><ul><li>SQLiteOpenHelper( を extends したクラス ) のコンストラクタを使用してインスタンスを作った後、 getWritableDatabase()( または getReadableDatabase()) を呼んで取得する </li></ul></ul><ul><ul><ul><li>DB は上記のメソッドが呼ばれたときに作られる。以降は何度呼んでも既に作った DB が返される。 </li></ul></ul></ul>09/19/11
  • 16. 4. query, insert, update, delete 実行 <ul><li>query() </li></ul><ul><ul><li>SQL 文 ( クエリ ) を用意して、それを実行してもらう </li></ul></ul>09/19/11
  • 17. 4. query, insert, update, delete 実行 <ul><li>insert() </li></ul><ul><ul><li>レコードを挿入する </li></ul></ul>09/19/11
  • 18. 4. query, insert, update, delete 実行 <ul><li>update() </li></ul><ul><ul><li>指定したレコードを更新する </li></ul></ul>09/19/11
  • 19. 4. query, insert, update, delete 実行 <ul><li>delete() </li></ul><ul><ul><li>指定したレコードを削除する </li></ul></ul>09/19/11
  • 20. 参考 URL <ul><li>Android Developers </li></ul><ul><ul><li>http://developer.android.com/intl/ja/index.html </li></ul></ul><ul><li>SQLite 公式サイト </li></ul><ul><ul><li>http://www.sqlite.org/ </li></ul></ul><ul><li>参考サイト (SQLite 入門 ) </li></ul><ul><ul><li>http://www.dbonline.jp/sqlite/ </li></ul></ul>09/19/11

×