:我有这张桌子:
id | name | chapter | book
1 hamlet I Hamlet
2 Ismael IV Moby Dick
我期望新值的行为是:
同名&&同一本书=>字符存在,因此与现有字符相同:
2 Ismael X Moby Dick
同名&&不同的书=>字符不存在因此更改id:
3 Ismael XX The Bible
我的问题是:
在插入新值然后插入新值之前,我是否必须进行查询?
或者有办法通过设置触发器或其他东西以自动方式完成它?
我的CREATE TABLE语句
db.execSQL("CREATE TABLE characters (id INTEGER NOT NULL ,
name TEXT NOT NULL , chapter TEXT NOT NULL , book TEXT NOT NULL );");
答案 0 :(得分:0)
我认为这样做最优雅的方法是隔离行的属性,以便能够无误地识别它们。让我们假设例如name + book使该行唯一,然后您可以将这些字符串连接到对象中的一个标识符,向数据库添加列,在其上放置和索引以及在要插入新元素时搜索此索引