H2 数据库自动增量 ID 在第一次输入后具有随机值
H2 database auto-incremented id's have random values after first entry
我用查询创建了数据库table:
"CREATE TABLE downloads(id BIGINT PRIMARY KEY AUTO_INCREMENT,...
当我在 table 中插入任何内容时,第一次为条目生成的 ID 是 1
第二次它的 100% 时间随机值 1,33,65,97,129,161,193,225,226,227 等
有没有办法让我的数据库正常自动递增? 1 ,2 ,3 ,4 等,对我来说,ID 号并不重要,但我必须能够预测下一个将出现在条目中的 ID beforehand.If 有一种方法可以预测或获取即将出现的 ID为我的条目生成的我不妨使用它,如果它没有造成任何巨大的开销。
所以我的问题是为什么我要获取 id 的随机值?
有没有办法设置自增为普通+1?
如果无法将自增设置为+1样式,是否可以在生成之前获取id值?
我用于连接的唯一选项是 ;DATABASE_TO_UPPER=false
查询插入数据
getConnection().prepareStatement("INSERT INTO downloads(state,name,size,source,added,completedOn,downloadDir) VALUES(?,?,?,?,?,?,?)",Statement.RETURN_GENERATED_KEYS);
编辑:创建新数据库后,数字每次都完全相同,所以这些值不是 random.First 我输入的 3 个值的 ID 为 1,33,65
发现问题出在查询的 PRIMARY KEY 部分...
从那里删除它并制作另一个数据库后,现在一切正常。
我用查询创建了数据库table:
"CREATE TABLE downloads(id BIGINT PRIMARY KEY AUTO_INCREMENT,...
当我在 table 中插入任何内容时,第一次为条目生成的 ID 是 1
第二次它的 100% 时间随机值 1,33,65,97,129,161,193,225,226,227 等
有没有办法让我的数据库正常自动递增? 1 ,2 ,3 ,4 等,对我来说,ID 号并不重要,但我必须能够预测下一个将出现在条目中的 ID beforehand.If 有一种方法可以预测或获取即将出现的 ID为我的条目生成的我不妨使用它,如果它没有造成任何巨大的开销。
所以我的问题是为什么我要获取 id 的随机值?
有没有办法设置自增为普通+1?
如果无法将自增设置为+1样式,是否可以在生成之前获取id值?
我用于连接的唯一选项是 ;DATABASE_TO_UPPER=false
查询插入数据
getConnection().prepareStatement("INSERT INTO downloads(state,name,size,source,added,completedOn,downloadDir) VALUES(?,?,?,?,?,?,?)",Statement.RETURN_GENERATED_KEYS);
编辑:创建新数据库后,数字每次都完全相同,所以这些值不是 random.First 我输入的 3 个值的 ID 为 1,33,65
发现问题出在查询的 PRIMARY KEY 部分... 从那里删除它并制作另一个数据库后,现在一切正常。