1、创建和打开数据库
在Android中创建和打开一个数据库都可以使用openOrCreateDatabases方法来实现,因为它会自动去检测是否存在这个数据库,如果存在就打开,如果不存在就创建一个数据库;创建成功就会返回一个SQLiteDatabase对象,否则抛出异常FileNotFoundException。下面我们来创建一个名为“Example_06_05.db”的数据库,并返回一个SQLiteDatabase对象mSQLiteDatabase。
mSQLiteDatabase = this。openOrCreateDatabase("Example_06_05.db",MODE_PRIVATE,null);
2、创建表
一个数据库中可以包含很多表,我们的每一条数据都是保存在一个指定的表中,要创建表可以通过execSQL方法来执行一条SQL语句。execSQL执行大部分的SQl语句,下面我们来创建名为table1且包含3个字段的表。具体代码如下:
String CREATE_TABLE = "CREATE TABLE table1 (_id INTEGER PRIMARY KEY,num INTEGER,data TEXT)";
mSQLiteDatabase.execSQL(CREATE_TABLE);
3、向表中添加一条数据
可以实行insert方法来添加数据,但是insert方法要求把数据都打包到ContentValues中,ContentValues其实就是一个Map,Key值是字段名称,Value值是字段的值。通过ContentValues的put方法就可以将数据放到ContentValues对象当中,然后插入到表中去,具体代码如下:
ContentValues cv= new ContentValues();
cv.put(TABLE_NUM,1);
cv.put(TABLE_DATA,"测试数据库");
mSQLiteDatabase.insert(TABLE_NAME,null,cv);
这里同样可以使用execSQL方法来执行一条“插入”的SQl语句,代码如下:
String INSERT_DATA = "INSERT INTO table1(_id,num,data) value (1,1,'通过SQL语句插入')";
mSQLiteDatabase.execSQL(INSERT_DATA);
4、从表中删除数据
删除数据就是用delete方法,下面我们来删除字段“_id”等于1的数据,机体代码如下:
mSQLiteDatabase.delete("Examples_06_05.db","WHERE _id="+0,null);
通过execSQL方法执行SQL语句的删除方法如下:
String DELETE_DATA = "DELETE table1 WHERE _id=1";
mSQLiteDatabase.execSQL(DELETE_DATA);
5、修改数据库中的数据
下面我们来修改“num”值为0的数据,具体代码如下:
ContentValues cv = new ContentValues();
cv.put(TABLE_NUM,3);
cv.put(TABLE_DATA,"修改后的数据");s
mSQLiteDatabase.upDate("table1",cv,"num " +"=" + Integer.toString(0),null);
6、关闭数据库
mSQLiteDatabase.close();
7、查询表中某条数据
在Android中通过Cursor类来实现,我们使用SQLiteDatabase.query()方法时,会得到一个Cursor对象,Cursor指向一条数据。