在PostgreSQL或MySQL中是否存在反向“AUTO_INCREMENT”的现有实现?

前端之家收集整理的这篇文章主要介绍了在PostgreSQL或MySQL中是否存在反向“AUTO_INCREMENT”的现有实现?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
无需手动执行(如果不存在其他选项,我可以实现),PostgresqlMySQL中是否有一种方法可以使自动计数器/字段递减而不是递增?

由于当前应用程序中的各种原因,如果知道通过查看最近添加的记录而不是减去多少条目(从数据类型的角度来看)仍然可以添加到表中,将会很高兴数据类型的最大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)

猜你在找的Postgre SQL相关文章