Oracle中sequence使用

问题1

需要查询当前sequence中是否存在SEQ_IOTC_X。

解决

  • user_sequences
  • all_sequences
  • dba_sequences
SELECT * FROM user_sequences t
WHERE t.sequence_name = 'SEQ_IOTC_X'

方案与oracle中ALL_TABLES、DBA_TABLES、USER_TABLES基本一致

问题2

需要创建一个自己的sequence:SEQ_IOTC_X

解决

  1. 创建sequence:

     create sequence SEQ_IOTC_X
     minvalue 1 
     maxvalue 99999999 
     start with 1 
     increment by 1  --步长
     nocache;
    
  2. 新创建的sequence必须要先初始化才能使用:

     select seq_iot_x.nextval from dual; --初始化
    
  3. 查看当前sequence值:

     select seq_iot_x.currval from dual;
    
  4. 删除sequence:

     DROP SEQUENCE seq_iot_x;
    
  5. Tips:
    如果想要seq重新从最小值开始,需要删掉seq重建,或者一步一步回退。

参考文章

oracle SEQUENCE 修改,删除,创建
Oracle重置序列(不删除重建方式)

Oracle中sequence使用_第1张图片
Oracle重置序列

你可能感兴趣的:(Oracle中sequence使用)