首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >“序列生成”是否显示为有序?Oracle窗体

问“序列生成”是否显示为有序?Oracle窗体
EN

Stack Overflow用户
提问于 2018-12-10 15:06:19
回答 1查看 180关注 0票数 0

​

应用execute_query显示所有记录,序列工作良好,但不按降序排列。

如果有任何方法按(“否”,列)中的顺序排序此数据块,请提供帮助。

代码语言:javascript
复制
create table Citizens_lic
(
No          NUMBER(10)              ,
ID          NUMBER(10)    
constraint      Citizens_ID_pk_1     PRIMARY KEY,
F_Name                  VARCHAR2(32)            ,
M_Name                  VARCHAR2(32)            ,
L_Name                  VARCHAR2(32)            ,
DOB                     DATE                    ,
POB                     VARCHAR2(32)            ,
GENDER                  VARCHAR2(32)            ,
WORK_STATUS             VARCHAR2(32)        ,
Soc_status              VARCHAR2(32)            ,
ISS_DATE                date                    ,
EXP_Date                date                   
)

这是表,这是顺序:

代码语言:javascript
复制
CREATE SEQUENCE CITIZENS_LIC_NO_SEQ_1
START WITH 1
INCREMENT BY 1

这是触发点:

代码语言:javascript
复制
 CREATE OR REPLACE TRIGGER CITIZENS_LIC_NO_TRIGG_1
 BEFORE INSERT ON CITIZENS_LIC
 FOR EACH ROW
 BEGIN
 SELECT CITIZENS_LIC_NO_SEQ_1.NEXTVAL
 INTO   :new.NO
 FROM   DUAL;
 END;

尝试添加任何值,都会很好,但是当您从窗体构建器中添加值时,它将根据鼠标单击更改顺序。

另一件事是,当我试图从表中删除任何东西时,序列破坏了顺序,被删除的值与其序列号一起消失了!

​

​

可能会形成触发器的帮助,但我不知道哪一种更好

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-10 16:54:37

如果要对数据块中的行进行排序,请打开其属性调色板,查找ORDER BY属性,并将所需的任何内容放入其中。在你的例子中,似乎

代码语言:javascript
复制
order by no desc

当您在该数据块中执行查询时,结果将按降序由no列排序。

从删除行开始:当然,它将丢失。你还想要什么?序列保证了唯一的,但不是无懈可击的数字列表。注意它的缓存;您甚至不必删除任何行,但是连续两个会话可能会产生空白。这就是序列的工作原理,如果我是你的话,我会接受的。

如果您想要创建无懈可击的数字,您必须编写自己的代码,并且它不会像您想象的那么简单。您必须注意插入(这很简单)、更新和删除。再一次:坚持序列。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53708384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档