相关文章推荐
年轻有为的弓箭  ·  python - ...·  1 年前    · 
奋斗的麦片  ·  前端 - Vue transition ...·  1 年前    · 
publicvoidupdateTable(ArrayList<UserTable>user){Stringsql1="deletefrom"+SqliteHelper.... public void updateTable(ArrayList<UserTable> user) {
String sql1 = " delete from " + SqliteHelper.TB_NAME + ";";// 删除数据
String sql2 = "update sqlite_sequence SET seq=0 where name = '"
+ SqliteHelper.TB_NAME + "' ;";//重置自增列
db.execSQL(sql1);
db.execSQL(sql2);
Log.v("123","123");
for (int i = 0; i < user.size(); i++) {
SaveUserInfo(user.get(i));
Log.v("i", i+"");
}
}
public void SaveUserInfo(UserTable user) {
ContentValues values = new ContentValues();
values.put(UserTable.USERPHONENUM, user.getUserphonenum());
values.put(UserTable.USERNAME, user.getUsername());
db.insert(SqliteHelper.TB_NAME, null, values);
} 应该是数据库创建的有问题,result=sqlite3_exec(db,"create table student(name,score)",NULL,NULL,NULL);中create table student(name,score)没有指明创建的字段是什么类型的,改为create table student(ID integer primary key autoincrement,name varchar(50),score integer) 最好加个主键字段ID。
另外后面跟着的
if(SQLITE_OK==result)
{
printf("create table fail\n");
return -1;
}
估计是弄错了,应该是 if(SQLITE_OK!=result)表示数据库创建不成功则退出,由于这个错误所以数据库没有创建成功就继续下面的程序,因为没有创建数据库后面的插入语句也就执行失败了。