我有两列Index
和path
。由于我的代码的当前逻辑,我希望路径为primary
密钥,索引为auto Increment
。这可能吗?
答案 0 :(得分:1)
GUID值在表甚至数据库中是唯一的,因此,使auto_increment列为主索引并为GUID创建UNIQUE索引。我认为这就是你所需要的。
答案 1 :(得分:0)
如果我说得对,你最终会希望path
会自动递增,
我已经在新值上使用了触发器,在表创建过程中运行这两个命令
String sqlTableCreation = String.format("create table %s (%s INTEGER primary key, " +
"%s integer DEFAULT 0)",
Contract.TABLE,
Contract.INDEX,
Contract.PATH
);
String sqlPathAutoIncrement =
String.format("CREATE TRIGGER pk AFTER INSERT ON %1$s" +
" BEGIN" +
" UPDATE %1$s" +
" SET %2$s = 1+ (SELECT MAX(%2$s) FROM %1$s) " +
" WHERE ROWID = new.ROWID;" +
" END;" ,
Contract.TABLE,
Contract.PATH,
Contract.INDEX);