カテゴリー:
アプリ ソースコード
閲覧数:466 配信日:2013-07-08 05:45
adb shell
・DB連携させるために何か設定が必要ではないかと思い、ブログ全エントリーを読む
・すると「adb shell」起動させているエントリーを発見
adb とは?
・「Android Debug Bridge」の略称
・「Android SDK」 の 「platform-tools」 に含まれるツール
エミュレータをインストールしたフォルダのtoolsをPathに設定
・確認したところ、Pathは通していたD:\Android\android-sdk\platform-tools; |
エミュレータを使用している場合は、エミュレータ上の、
メニューボタンの「設定」⇒「アプリケーション」⇒「開発」で「USBデバッグ」のチェックをオンにします
・設定済だったメニューボタンの「設定」⇒「アプリケーション」⇒「開発」で「USBデバッグ」のチェックをオンにします
データベース名一覧
・「cd data/data/パッケージ名/databases」で移動後、「ls」
C:\Users\Administrator>adb shell # cd data/data/com.fc2.blog98.andromaker.housekeepingbook/databases cd data/data/com.fc2.blog98.andromaker.housekeepingbook/databases # ls ls HousekeepingBook.db |
・予想に反してDBは作成されているみたい
テーブル名表示
データベース内のテーブル名を表示
1.「sqlite3 データベース名」 … 対象DB指定
2.「.table」 … データベース内のテーブル名を表示
# sqlite3 HousekeepingBook.db sqlite3 HousekeepingBook.db SQLite version 3.5 . 9 Enter ".help" for instructions sqlite> .table .table 2013 - 7 2013 - 7 - 7 android_metadata utiwake 2013 - 7 - 10 aaaa item |
・この時点では見方が分からなかった(横一列に見るのだとばかり思っていた)
・え? どれがテーブル名?
・「item」はカラム名?
・しばらく操作後、再度確認したら、ようやく理解できたよ
・横一列じゃなくて、全部がテーブル名なんだね
・日付を「テーブル名」にしたことなんてなかったから戸惑ったけども、日付ベースで管理していくのだから、これでいいのか
.tables 2013 - 7 2013 - 7 - 8 android_metadata 2013 - 7 - 10 2013 - 7 - 9 item 2013 - 7 - 7 aaaa utiwake |
テーブル内容表示
「select * from テーブル名で、テーブル内容表示
sqlite> select * from aaaa; select * from aaaa; sqlite> select * from item; select * from item; 1 |繝昴Ο繧キ繝」繝・ 2 |鬟イ鬟・ sqlite> select * from utiwake; select * from utiwake; 1 |譛・ 2 |繝代せ繧ソ 3 | sqlite> select * from android_metadata; select * from android_metadata; ja_JP sqlite> select * from '2013-7' ; select * from '2013-7' ; 1 |繝昴Ο繧キ繝」繝л 1690 2 |繝昴Ο繧キ繝」繝л 680 3 |鬟イ鬟毫 123 sqlite> select * from '2013-7-10' ; select * from '2013-7-10' ; sqlite> select * from '2013-7-9' ; select * from '2013-7-9' ; sqlite> select * from '2013-7-8' ; select * from '2013-7-8' ; 1 |繝昴Ο繧キ繝」繝л譛・ | 1690 sqlite> select * from '2013-7-7' ; select * from '2013-7-7' ; 1 |繝昴Ο繧キ繝」繝л譛・ | 680 2 |鬟イ鬟毫繝代せ繧ソ| 123 |
気が付いたこと
・カラム名は「''」で囲む(特に数字の場合は)
sqlite> select * from 2013 - 7 ; select * from 2013 - 7 ; SQL error: near "2013" : syntax error |
→「select * from '2013-7';」
・文字化け
・コマンドプロンプトの問題?