2011年11月29日 星期二

使用資料庫

Android所提供的資料儲存,如果需要大量儲存資料時可以使用SQLite,SQLite可用來儲存應用程式中會使用到的資料,還可以透過『Content Provider』來讓其他應用程式可以使用建立的資料庫,在SQLite中可以使用SQL的語法來查詢(SELECT)、修改(UPDATE)、刪除(DELETE)、定義資料格式(CREATE TABLE)、新增(INSERT),首先我們先透過cmd了解如何建立一個資料庫與新增資料表

C:\Users\USER>I://切換到磁碟機路徑
I:\>cd eclipse\android-sdk-windows\tools//指向資料夾
I:\eclipse\android-sdk-windows\tools>adb shell//利用此命令進入模擬器的命令行介面
# cd data/data/
cd data/data/
# ls//列出目錄
ls
com.demo.android.MapA
com.android.providers.subscribedfeeds
com.example.android.softkeyboard
com.android.gesture.builder
com.example.android.livecubes
com.example.android.apis
com.android.vending
com.android.htmlviewer
com.android.gallery
com.android.fallback
com.android.providers.drm
com.android.development
com.google.android.street
com.android.speechrecorder
com.android.spare_parts
com.android.soundrecorder
com.android.sdksetup
com.android.protips
com.android.inputmethod.pinyin
com.svox.pico
com.android.defcontainer
com.android.customlocale
com.android.contacts
com.android.certinstaller
com.android.cardock
com.android.carhome
com.android.camera
com.android.calculator2
com.android.providers.applications
com.android.server.vpn
android.tts
com.android.term
com.android.packageinstaller
jp.co.omronsoft.openwnn
com.google.android.location
com.android.netspeed
com.android.music
com.android.wallpaper.livepicker
com.android.providers.userdictionary
com.android.mms
com.android.quicksearchbox
com.m.map
com.android.providers.settings
com.android.providers.contacts
com.android.phone
com.demo.android.MapB
com.android.launcher
com.android.providers.telephony
com.android.providers.downloads
com.google.android.gsf
com.android.providers.media
com.android.email
com.android.alarmclock
com.android.settings
com.android.inputmethod.latin
com.android.browser
com.google.android.apps.maps
com.demo.android.RadioGroupA
com.demo.android.Map
com.demo.android.SQLiteA
# cd com.demo.android.SQLiteA//指向到你的package
cd com.demo.android.SQLiteA
# ls
ls
database
lib
databases
# chmod 777 database//777表完整的權限 可讀/可寫/可修改 chmod改變預設的存取權限
chmod 777 database
# ls –l//-l列出詳細的檔案資訊 大小 日期 存取權限
ls -l
drwxrwxrwx root     root              2011-11-29 02:04 database
drwxr-xr-x system   system            2011-11-28 07:28 lib
drwxrwxrwx root     root              2011-11-28 08:48 databases
# cd database
cd database
# sqlite3 test.db//利用sqlite3建立db
sqlite3 test.db
SQLite version 3.6.22
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> create table film(num, name, phone, address);// 建一名叫film的資料表4個欄
create table film(num, name, phone, address);
sqlite> .database//進行驗證
.database
seq  name             file

---  ---------------  ----------------------------------------------------------

0    main             /data/data/com.demo.android.SQLiteA/database/test.db

sqlite> .tables//列出所有資料表
.tables
film
sqlite> .schema//印出建立的資料表
.schema
CREATE TABLE film(num, name, phone, address);
sqlite>.exit//離開
#ls

沒有留言:

張貼留言