我试图理解SQLiteDatabase.insertWithOnConflict的返回值。
我的代码就像:
long result = db.insertWithOnConflict(
MyTable.TABLE_NAME,
null,
initialValues,
SQLiteDatabase.CONFLICT_IGNORE);
insertWithOnConflict的doc说:
返回: 如果输入参数'conflictAlgorithm'= CONFLICT_IGNORE则为新插入行的行ID或现有行的主键,如果有任何错误则为-1
如果MyTable的主键是TEXT类型怎么办?当发生插入冲突时,如何将现有行的主键(TEXT值)返回到长变量?
感谢。
答案 0 :(得分:1)
如果MyTable的主键是TEXT类型怎么办?当发生插入冲突时,如何将现有行的主键(TEXT值)返回到长变量?
按主键表示rowid。
如果您的主键是integer primary key
,那么它将替换为rowid。