【发布时间】:2014-03-14 16:19:00
【问题描述】:
我在sqlite中有2列名称和日期,名称已经设置为唯一以避免重复输入,但我的问题是我想为列“名称”插入相同的记录,但在“日期”列中插入不同的记录.我也使用它来过滤重复记录并且它有效。
try {
dbOpenHelperss.insertOrThrow("table", values);
} catch (SQLiteConstraintException e)
//to detect if there is a duplicated item
}
例如在 column_name='Peter Xavier' column_date='02/15/14 中,我想插入不同日期的 Peter Xavier 记录,例如 column_name ='Peter Xavier' , column_date='02/16/14
到目前为止我尝试的是
if(!"column_date".equals(colum_name)) {
//to compare two columns are not the same then insert
ContentValues values = new ContentValues();
values.put("column_name",name );
values.put("column_date", date);
try {
dbOpenHelperss.insertOrThrow("table", values);
} catch (SQLiteConstraintException e) {
// to detect if there is a duplicate entry
}
}
【问题讨论】:
-
删除
name列的unique。并使用新列来避免重复。例如:身份证。 -
正如 Gunaseelan 所说..如果您想在名称列中插入重复值,那么为什么要定义它是唯一的?只需从名称列中删除唯一约束..
-
感谢您的回复,我的意思是如果 column_name 和 column_date 相同,我将无法插入记录..如果 column_name 和 column_date 不同,我将能够插入