Android创建和使用数据库SQLIte

2019-12-10 17:58:48王旭

下面示例代码展示了如何继承 SQLiteOpenHelper 创建数据库:

public class DatabaseHelper extends SQLiteOpenHelper { 
 DatabaseHelper(Context context, String name, CursorFactory cursorFactory, int version) 
 { 
 super(context, name, cursorFactory, version); 
 } 
 
 @Override 
 public void onCreate(SQLiteDatabase db) { 
 // TODO 创建数据库后,对数据库的操作 
 } 
 
 @Override 
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { 
 // TODO 更改数据库版本的操作 
 } 
 
@Override 
public void onOpen(SQLiteDatabase db) { 
 super.onOpen(db);  
 // TODO 每次成功打开数据库后首先被执行 
 } 
} 

       接下来讨论具体如何创建表、插入数据、删除表等等。调用 getReadableDatabase() 或 getWriteableDatabase() 方法,你可以得到 SQLiteDatabase 实例,具体调用那个方法,取决于你是否需要改变数据库的内容:

db=(new DatabaseHelper(getContext())).getWritableDatabase(); 
return (db == null) ? false : true; 

上面这段代码会返回一个 SQLiteDatabase 类的实例,使用这个对象,你就可以查询或者修改数据库。
当你完成了对数据库的操作(例如你的 Activity 已经关闭),需要调用 SQLiteDatabase 的 Close() 方法来释放掉数据库连接。
4.2创建表和索引
为了创建表和索引,需要调用 SQLiteDatabase 的 execSQL() 方法来执行 DDL 语句。如果没有异常,这个方法没有返回值。
例如,你可以执行如下代码:

db.execSQL("CREATE TABLE mytable (_id INTEGER PRIMARY KEY 
 AUTOINCREMENT, title TEXT, value REAL);");