本文共 712 字,大约阅读时间需要 2 分钟。
在使用insert(table, nullColumnHack, values)向数据库插入数据时,出现插入数据无效。
数据库代码:(ID为主键)
public static void insert(Photo photo) { ContentValues cv = new ContentValues(); cv.put(ID, photo.getId()); cv.put(PATH, photo.getPath()); cv.put(TIME, photo.getTime()); DBHandler.getInstance().insert(TABLE_NAME, null, cv);}
DBHandler.getInstance().insert中的代码为:
public void insert(String table, String nullColumnHack, ContentValues values) { getDatebase().insert(table, nullColumnHack, values);}
调用的代码
Photo bean = new Photo();bean.setPath(path); bean.setTime(time);
失败原因:bean没有setId();而id是主键,如果在没有主键的情况下,
insert(table, nullColumnHack, values)
方法会造成插入失败。
不管第三个参数是否包含数据,执行Insert()方法必然会添加一条记录,如果第三个参数为空,会添加一条除主键之外其他字段值为Null的记录,
转载地址:http://pbfgi.baihongyu.com/