手机卡上写入SqLite数据

来源:互联网 发布:热血传奇手游脚本源码 编辑:程序博客网 时间:2024/06/09 14:02

DBHelper.java------------------------------------辅助类,创建数据库和数据库表

public class DBHelper extends SQLiteOpenHelper {
public static final String PATH = Environment.getExternalStorageDirectory().getAbsolutePath() + "/note/";
// public static final String PATH =
// Environment.getDownloadCacheDirectory().getAbsolutePath() + "/note/";
public static final String DBFILENAME = "noteBook.db";// 数据库名
private static int db_version = 1;
public static final String TABLENAME = "note";// 存储时间数据的表名


public DBHelper(Context context) {
super(context, DBFILENAME, null, db_version);
// TODO Auto-generated constructor stub
}

@Override
public void onCreate(SQLiteDatabase db) {
String sql = "create table " + TABLENAME + "(id integer primary key autoincrement,"
+ "title text,content text,category text," + "editor text,hot text,time text,uploadtag text)";
db.execSQL(sql);
System.out.println("表创建成功");
}


@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
if (newVersion != oldVersion) {
// 更新数据库
oldVersion = newVersion;
}
}
}


DBManage.java--------------------------------------------操作数据库,增删改查。如果是需要写入SD卡的,需要重写getWritableDatabase()方法。

private Context context = null;

private DBHelper dbHelper;// 数据库的辅助类


public DBManage(Context context) {
dbHelper = new DBHelper(context);// 初始化数据库辅助类

}


// 增加事件
public void addNote(Note note) {
// 使得db对象执行onCreate()
SQLiteDatabase db = dbHelper.createFileOnSDcard(DBHelper.PATH, DBHelper.DBFILENAME);
String insert = "insert into " + DBHelper.TABLENAME
+ "(title,content,time,uploadtag,category,editor,hot) values(?,?,?,?,?,?,?)";


String[] params = { note.getTitle(), note.getContent(), note.getTime(), note.getUploadtag(),
note.getCategory(), note.getEditor(), note.getHot() };


db.execSQL(insert, params);
db.close();
}


// 删除事件
public void deleteNote(int id) {
// SQLiteDatabase db = dbHelper.getWritableDatabase();
SQLiteDatabase db = dbHelper.createFileOnSDcard(DBHelper.PATH, DBHelper.DBFILENAME);
String delete = "delete from " + DBHelper.TABLENAME + " where id=" + id;
db.execSQL(delete);
db.close();
}


// 修改事件
public void modifyNote(Note note, int id) {
// SQLiteDatabase db = dbHelper.getWritableDatabase();
SQLiteDatabase db = dbHelper.createFileOnSDcard(DBHelper.PATH, DBHelper.DBFILENAME);
String modify = "update " + DBHelper.TABLENAME
+ " set title=?,content=?,time=?,uploadtag=?,category=?,editor=?,hot=? where id=?";
Object[] params = { note.getTitle(), note.getContent(), note.getTime(), note.getUploadtag(),
note.getCategory(), note.getEditor(), note.getHot(), id };
db.execSQL(modify, params);
db.close();
}


// 查询所有的事件
public List<Note> findAll() {
// SQLiteDatabase db = dbHelper.getWritableDatabase();
SQLiteDatabase db = dbHelper.createFileOnSDcard(DBHelper.PATH, DBHelper.DBFILENAME);
String findAll = "select * from " + DBHelper.TABLENAME;
List<Note> list = new ArrayList<Note>();
try {
Cursor cursor = db.rawQuery(findAll, null);
Note note = null;
while (cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndex("id"));
String title = cursor.getString(cursor.getColumnIndex("title"));
String content = cursor.getString(cursor.getColumnIndex("content"));
String time = cursor.getString(cursor.getColumnIndex("time"));
String uploadtag = cursor.getString(cursor.getColumnIndex("uploadtag"));
String category = cursor.getString(cursor.getColumnIndex("category"));
String editor = cursor.getString(cursor.getColumnIndex("editor"));
String hot = cursor.getString(cursor.getColumnIndex("hot"));
note = new Note(id, title, content, time, uploadtag, category, editor, hot);
list.add(note);
}
} catch (Exception e) {
e.printStackTrace();
System.out.println("查询不到数据");
}


db.close();


return list;
}


public Note findOneEvent(int id) {
// SQLiteDatabase db = dbHelper.getWritableDatabase();
SQLiteDatabase db = dbHelper.createFileOnSDcard(DBHelper.PATH, DBHelper.DBFILENAME);
String findAll = "select * from " + DBHelper.TABLENAME + " where id=" + id;
Cursor cursor = db.rawQuery(findAll, null);


id = cursor.getInt(cursor.getColumnIndex("id"));
String title = cursor.getString(cursor.getColumnIndex("title"));
String content = cursor.getString(cursor.getColumnIndex("content"));
String time = cursor.getString(cursor.getColumnIndex("time"));
String uploadtag = cursor.getString(cursor.getColumnIndex("uploadtag"));
String category = cursor.getString(cursor.getColumnIndex("category"));
String editor = cursor.getString(cursor.getColumnIndex("editor"));
String hot = cursor.getString(cursor.getColumnIndex("hot"));
Note note = new Note(id, title, content, time, uploadtag, category, editor, hot);
db.close();
return note;
}


// 根据标题查找数据
public List<Note> findByCondition(String condition) {
// SQLiteDatabase db = dbHelper.getWritableDatabase();
SQLiteDatabase db = dbHelper.createFileOnSDcard(DBHelper.PATH, DBHelper.DBFILENAME);
String findAll = "select * from " + DBHelper.TABLENAME + " where title like %" + condition + "% or time like %"
+ condition + "% or content like %" + condition + "%";
Cursor cursor = db.rawQuery(findAll, null);
List<Note> list = new ArrayList<Note>();
Note note = null;
while (cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndex("id"));
String title = cursor.getString(cursor.getColumnIndex("title"));
String content = cursor.getString(cursor.getColumnIndex("content"));
String time = cursor.getString(cursor.getColumnIndex("time"));
String uploadtag = cursor.getString(cursor.getColumnIndex("uploadtag"));
String category = cursor.getString(cursor.getColumnIndex("category"));
String editor = cursor.getString(cursor.getColumnIndex("editor"));
String hot = cursor.getString(cursor.getColumnIndex("hot"));
note = new Note(id, title, content, time, uploadtag, category, editor, hot);
list.add(note);
}
db.close();
return list;
}


// 根据时间查找数据
public List<Note> findByTime(String condition) {
// SQLiteDatabase db = dbHelper.getWritableDatabase();
SQLiteDatabase db = dbHelper.createFileOnSDcard(DBHelper.PATH, DBHelper.DBFILENAME);
String findAll = "select * from " + DBHelper.TABLENAME + " where time like %" + condition + "%";
Cursor cursor = db.rawQuery(findAll, null);
List<Note> list = new ArrayList<Note>();
Note note = null;
while (cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndex("id"));
String title = cursor.getString(cursor.getColumnIndex("title"));
String content = cursor.getString(cursor.getColumnIndex("content"));
String time = cursor.getString(cursor.getColumnIndex("time"));
String uploadtag = cursor.getString(cursor.getColumnIndex("uploadtag"));
String category = cursor.getString(cursor.getColumnIndex("category"));
String editor = cursor.getString(cursor.getColumnIndex("editor"));
String hot = cursor.getString(cursor.getColumnIndex("hot"));
note = new Note(id, title, content, time, uploadtag, category, editor, hot);
list.add(note);
}
db.close();
return list;
}


// 根据内容查找数据
public List<Note> findByContent(String condition) {
// SQLiteDatabase db = dbHelper.getWritableDatabase();
SQLiteDatabase db = dbHelper.createFileOnSDcard(DBHelper.PATH, DBHelper.DBFILENAME);
String findAll = "select * from " + DBHelper.TABLENAME + " where content like %" + condition + "%";
Cursor cursor = db.rawQuery(findAll, null);
List<Note> list = new ArrayList<Note>();
Note note = null;
while (cursor.moveToNext()) {
int id = cursor.getInt(cursor.getColumnIndex("id"));
String title = cursor.getString(cursor.getColumnIndex("title"));
String content = cursor.getString(cursor.getColumnIndex("content"));
String time = cursor.getString(cursor.getColumnIndex("time"));
String uploadtag = cursor.getString(cursor.getColumnIndex("uploadtag"));
String category = cursor.getString(cursor.getColumnIndex("category"));
String editor = cursor.getString(cursor.getColumnIndex("editor"));
String hot = cursor.getString(cursor.getColumnIndex("hot"));
note = new Note(id, title, content, time, uploadtag, category, editor, hot);
list.add(note);
}
db.close();
return list;
}
0 0
原创粉丝点击