sqlite中数据存在更新,数据不存在添加的语句怎么写
2个回答
展开全部
这里我们要用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语句改一下即可套用
注意!此方法返回值是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语句改一下即可套用
展开全部
///sqlite数据表建立唯一限制就行了么///sql代码如下:CREATE TABLE "main"."film" ("filmno" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,"filmname" TEXT(100),"language" TEXT(10),"type" TEXT(10),CONSTRAINT "不重复规则" UNIQUE ("filmnam...
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询