import java.util.Date;import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.SQLException;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;public class DB {
private static final String DATABASE_NAME="notes.db";
private static final int DATABASE_VERSION=1;
private static final String DATABASE_TABLE="notes";
private static final String DATABASE_CREATE=
"create table notes("
         +"_id INTEGER PRIMARY KEY,"
 +"note TEXT NOT NULL,"
         +"created INTEGER"
         +");";


private static class DatabaseHelper extends SQLiteOpenHelper{ public DatabaseHelper(Context context) {
super(context,DATABASE_NAME, null, DATABASE_VERSION);
// TODO Auto-generated constructor stub
} @Override
public void onCreate(SQLiteDatabase db) {
// TODO Auto-generated method stub
db.execSQL(DATABASE_CREATE);

} @Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
// TODO Auto-generated method stub
db.execSQL("DROP TABLE IF EXISTS "+DATABASE_TABLE); onCreate(db);
}

}

private Context mCtx=null;
private DatabaseHelper dbHelper;
private SQLiteDatabase db;

public DB(Context ctx){
this.mCtx=ctx;
}

public DB open() throws SQLException{
dbHelper=new DatabaseHelper(mCtx);
db=dbHelper.getWritableDatabase();
return this;
}
public void close(){
dbHelper.close();
}

public static final String KEY_ROWID="_id";
public static final String KEY_NOTE="note";
public static final String KEY_CREATED="created";

String[] strCols=new String[]{
KEY_ROWID,KEY_NOTE,KEY_CREATED
};

public Cursor getAll(){
return db.query(DATABASE_TABLE,strCols,null,null,null,null,null);
}
    //增加记录
public long create(String Note){
Date now=new Date();
ContentValues args=new ContentValues();
args.put(KEY_NOTE, Note);
args.put(KEY_CREATED, now.getTime());
return db.insert(DATABASE_TABLE,null,args);
}
//删除记录
public boolean delete(long rowId){
return db.delete(DATABASE_TABLE, KEY_ROWID+"="+rowId,null )>0;
}

//查询单条记录
public Cursor get(long rowId) throws SQLException{
Cursor mCursor=db.query(true,
DATABASE_TABLE,
new String[]{KEY_ROWID,KEY_NOTE,KEY_CREATED},
KEY_ROWID+"=" +rowId,
    null,null,null,null,null);
if(mCursor!=null){
mCursor.moveToFirst();
}
return mCursor;
}
//更新记录
public boolean update(long rowId,String note){
ContentValues args=new ContentValues();
args.put(KEY_NOTE, note);
return db.update(DATABASE_TABLE, args, KEY_ROWID+"="+rowId, null)>0;
}

}

解决方案 »

  1.   

    SQLite的应用,找本书,前面几页应该都能找到。
      

  2.   

    能推荐几本SQLite方面的书吗?十分感谢!
      

  3.   

    SQLite最简单的应用了哦,随便 哪本书都会讲这个的
      

  4.   

    话说,你可以先买本书补补java基础....
      

  5.   

    好吧,谢谢各位了,我去买本Android入门的书
      

  6.   

    //首先该程序导入了许多必要的包
    import java.util.Date;
    import android.content.ContentValues;
    import android.content.Context;
    import android.database.Cursor;
    import android.database.SQLException;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteOpenHelper;
    //创造了一个类
    public class DB {
    //定义了一些私有的静态常量
    //数据库的名字
     private static final String DATABASE_NAME="notes.db";
    //数据库的版本号
     private static final int DATABASE_VERSION=1;
    //表名
     private static final String DATABASE_TABLE="notes";
    //一个sql语句作用创造一个表 notes两个字段
    private static final String DATABASE_CREATE=
     "create table notes("
     +"_id INTEGER PRIMARY KEY,"
     +"note TEXT NOT NULL,"
     +"created INTEGER"
     +");";
     
    //定义一个静态的类Databasehelper继承了SQLiteOpenHelper
    private static class DatabaseHelper extends SQLiteOpenHelper{
    //该类的构造方法
     public DatabaseHelper(Context context) {
     super(context,DATABASE_NAME, null, DATABASE_VERSION);
     // TODO Auto-generated constructor stub
     }
    //当实例化这个类的时候将会调用该方法,该方法就会创建一个在数据库中创建一张表
     @Override
     public void onCreate(SQLiteDatabase db) {
     // TODO Auto-generated method stub
     db.execSQL(DATABASE_CREATE); }
    //该方法是更新数据库
     @Override
     public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
     // TODO Auto-generated method stub
    //他是这么做的如果这个表存在着删除它,然后在重新创建一个表
     db.execSQL("DROP TABLE IF EXISTS "+DATABASE_TABLE); onCreate(db);
     } }
     //定义了一些成员变量
    private Context mCtx=null;
     private DatabaseHelper dbHelper;
     private SQLiteDatabase db;
     
    public DB(Context ctx){
     this.mCtx=ctx;
     }
     //该方法返回一个可以读写的数据库的助手类对象
    public DB open() throws SQLException{
     dbHelper=new DatabaseHelper(mCtx);
     db=dbHelper.getWritableDatabase();
     return this;
     }
    //关闭数据库
     public void close(){
     dbHelper.close();
     }
     //定义一些全局静态常量
    public static final String KEY_ROWID="_id";
     public static final String KEY_NOTE="note";
     public static final String KEY_CREATED="created";
     
    String[] strCols=new String[]{
     KEY_ROWID,KEY_NOTE,KEY_CREATED
     };
     //得到游标对象
    public Cursor getAll(){
     return db.query(DATABASE_TABLE,strCols,null,null,null,null,null);
     }
       //增加记录
     public long create(String Note){
     Date now=new Date();
     ContentValues args=new ContentValues();
     args.put(KEY_NOTE, Note);
     args.put(KEY_CREATED, now.getTime());
     return db.insert(DATABASE_TABLE,null,args);
     }
     //删除记录
     public boolean delete(long rowId){
     return db.delete(DATABASE_TABLE, KEY_ROWID+"="+rowId,null )>0;
     }
     
    //查询单条记录
     public Cursor get(long rowId) throws SQLException{
     Cursor mCursor=db.query(true,
     DATABASE_TABLE,
     new String[]{KEY_ROWID,KEY_NOTE,KEY_CREATED},
     KEY_ROWID+"=" +rowId,
     null,null,null,null,null);
     if(mCursor!=null){
     mCursor.moveToFirst();
     }
     return mCursor;
     }
     //更新记录
     public boolean update(long rowId,String note){
     ContentValues args=new ContentValues();
     args.put(KEY_NOTE, note);
     return db.update(DATABASE_TABLE, args, KEY_ROWID+"="+rowId, null)>0;
     }
     
    }