我正在为我的应用程序使用cockroachDB。
其中一个模式具有增量ID(从1开始)。我为该表创建了序列,并将该序列用作主键。
问题在于,除非我删除数据库并创建它,否则此序列不会重置。
所以我的问题是,每次运行测试是否都可以重置此顺序?还是只有在每次运行测试时都删除并创建数据库才可以这样做?
先谢谢您。
答案 0 :(得分:0)
我很确定唯一的方法就是“每次运行测试都删除并创建数据库”
答案 1 :(得分:0)
CockroachDB支持setval()
函数来重置序列的值。
但还请记住,序列不能保证没有间隙(回滚的事务可能会在从未使用的序列中留下间隙),因此您的应用程序不应假定值从1开始而不跳过任何内容。如果您不重置序列,则与在测试套件开始时有很大的差距一样。