注册横幅广告时,必须通过选择框设置横幅广告的排序顺序(即横幅广告列表的长度+ 1)
如果我注册了5个横幅(1、2、3、4、5),则在删除2个横幅(2、4)之后再剩下3个横幅(1、3、5)。删除后,我必须在sql中将其重新排序为1、2、3。
因为当我更新排序顺序为5的横幅时,由于选择框固定为横幅列表的长度+1
,所以无法显示此消息当我要在末尾注册新横幅(数字4)时,由于最后已经存在5个,所以不能最后注册。
我不知道尝试这个
答案 0 :(得分:0)
您不需要更新列,您需要一个序列
创建一个sequence
来处理ID。插入新行时,请使用nextval顺序。
create sequence bannerseq
MINVALUE 1
START WITH 1
INCREMENT BY 1
CACHE 20;
那么您的插入内容将是:
insert into banner (id, othercols)
values (bannerseq.nextval, 'Somevalue');
这有助于减轻破坏外键的可能性。