一、oracle查询序列当前值
查询序列当前值:
SELECT SEQ_SMS_INFO_ID.CURRVAL FROM dual;
查询序列下一个值:
SELECT SEQ_SMS_INFO_ID.NEXTVAL FROM DUAL;
必须是先执行查询序列下一个值才可以查询得到序列当前值。(这个先后指的不仅仅是序列有值,而是前面执行过nextval)
二、Oracle修改序列当前值的方式
直接drop sequence seq_test;然后重新创建并且设置序列的初始值为希望的数据
drop sequence seq_test;
create sequence seq_test
increment by 1
start with 1//你想要的值
maxvalue 999999999999999999999999999;
三、Oracle根据主键获取对应表,Oracle根据外键获取相关表
1、Oracle根据主键获取对应表
select *
from user_constraints a, USER_CONS_COLUMNS b
where a.CONSTRAINT_TYPE = 'P'
and a. constraint_name = b.constraint_name
and a.constraint_name = 'SYS_C0024631'; --根据主键名查询表(SYS_C0024631为主键名称)
2、Oracle根据外键获取相关表
select *
from user_constraints cc
where cc.r_constraint_name in
(select c.r_constraint_name
from user_constraints c
where c.constraint_type = 'R'
and c.constraint_name = 'SYS_C0024632') --根据外键获取相关的表(SYS_C0024632为外键名称)