ANDROID APP
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
234 บทที่ 9 การทำางานร่วมกับข้อมูล<br />
}<br />
Log.v("Insert into database exception caught",<br />
ex.getMessage());<br />
return -1;<br />
}<br />
}<br />
public Cursor getdiaries()<br />
{<br />
Cursor c = db.query(Constants.TABLE_NAME, null, null,<br />
null, null, null, null);<br />
return c;<br />
}<br />
ในชุดคำสั่งที่ 9.10 จะแสดงการสร้างคลาส MyDBhelper เอาไว้ ซึ่งเฟรมเวิร์ค SQLIteOpen-<br />
Helper มีเมธอดที่ใช้จัดการหรืออัพเกรดฐานข้อมูลอยู่ เมื่อเริ่มใช้งานฐานข้อมูล เราจะต้องกำหนดชื่อ<br />
ของฐานข้อมูลที่ต้องการสร้าง โดยจะเก็บไว้ใน /data/data/com.cookbook.datastorage/<br />
databases และกำหนดค่าของเวอร์ชั่นฐานข้อมูลเพื่อที่ระบบจะได้ตรวจสอบได้ว่าจะต้องเรียกใช้คำสั่ง<br />
onCreate() หรือคำสั่ง onUpgrade()<br />
เราสามารถสร้างตารางในฐานข้อมูลได้ด้วยการใช้คำสั่ง SQL ซึ่งจะเขียนไว้ในเมธอด onCreate()<br />
ดังนี้<br />
create table MyTable (key_id integer primary key autoincrement,<br />
title text not null, content text not null,<br />
recorddate long);<br />
ในกรณีที่มีการอัพเกรดฐานข้อมูล เมื่ออัพเกรดเสร็จแล้ว ค่าตัวเลขของเวอร์ชั่นฐานข้อมูลจะ<br />
เปลี่ยนไป<br />
ชุดคำสั่งที่ 9.10 src/com/cookbook/data/MyDBhelper.java<br />
package com.cookbook.data;<br />
import android.content.Context;<br />
import android.database.sqlite.SQLiteDatabase;<br />
import android.database.sqlite.SQLiteException;<br />
import android.database.sqlite.SQLiteOpenHelper;<br />
import android.database.sqlite.SQLiteDatabase.CursorFactory;<br />
import android.util.Log;<br />
public class MyDBhelper extends SQLiteOpenHelper{<br />
private static final String CREATE_TABLE="create table "+<br />
Constants.TABLE_NAME+" ("+<br />
Constants.KEY_ID+" integer primary key autoincrement, "+<br />
Constants.TITLE_NAME+" text not null, "+<br />
Constants.CONTENT_NAME+" text not null, "+<br />
Constants.DATE_NAME+" long);";