这里我们要用Cursor中的getCount()方法去获得表中数据的行数(即,是否有数据)
注意!此方法返回值是int型,为数据行数,有数据则大于等于1无数据则为0,
拿到查询回来的行数后在java代码中判断是否为0,即是否有数据!看下面代码:
//创建或者打开数据库
SQLiteDatabase db = openOrCreateDatabase("test.db", Context.MODE_PRIVATE, null);
//实例化一个Cursor 为c做查询
Cursor c=db.rawQuery("select * from person where id=1",null);
int re = c.getCount();//定义一个int型变量re接收查询行数的返回值
//对re(数据行数)进行判断,为0执行下面insert,非0执行update if(re==0){
db.execSQL("insert into person(id,name,password) values(1,2,3)");
}else{
db.execSQL("update person set name=? ,password=? where id=1",new Object[]{name,password});
}
基本每一行都有注释,纯手打。SQL语句改一下即可套用
取消
评论