无需手动执行(如果不存在其他选项,我可以实现),PostgreSQL或MySQL中是否有一种方法可以使自动计数器/字段递减而不是递增?
由于当前应用程序中的各种原因,如果知道通过查看最近添加的记录而不是减去多少条目(从数据类型的角度来看)仍然可以添加到表中,将会很高兴数据类型的最大ID.
那么,这两个系统都有“AUTO_DECREMENT”或类似内容吗?
解决方法:
您必须在PostgreSQL中进行一些手动配置,但您可以配置如下序列:
create sequence example_seq
increment by -1
minvalue 1
maxvalue 5
start with 5;
create table example(
example_id int primary key default nextval('example_seq'),
data text not null
);
alter sequence example_seq owned by example.example_id;
我想这相当于用一个串行列创建表,然后改变自动生成的序列.
现在如果我插入一些行,我得到的example_id从5开始向下计数.如果我尝试插入超过5行,我得到nextval:达到序列“example_seq”的最小值(1)