日期:2014-05-17 浏览次数:21366 次
create sequence FZBG.RD_LXPB_CORRESPONDENCE_SEQU minvalue 1 maxvalue 999999999999999999999999999 start with 1 increment by 1 cache 100;
------解决方案--------------------
先DROP 掉,再RE-CREATE
------解决方案--------------------
SQL> drop sequence RD_LXPB_CORRESPONDENCE_SEQU;
序列已丢弃。
SQL> CREATE SEQUENCE RD_LXPB_CORRESPONDENCE_SEQU
2 START WITH 4201
3 MAXVALUE 999999999999999999
4 MINVALUE 1
5 NOCYCLE
6 CACHE 100
7 NOORDER;
序列已创建。
SQL> CREATE TABLE RD_LXPB_CORRESPONDENCE
2 (
3 LXID NUMBER(20) NOT NULL,
4 LXDW VARCHAR2(50 BYTE),
5 SXSJ DATE,
6 LXR VARCHAR2(50 BYTE),
7 XXDH VARCHAR2(800 BYTE),
8 LXZT VARCHAR2(1000 BYTE),
9 LXNR CLOB,
10 YSBH VARCHAR2(50 BYTE),
11 BH VARCHAR2(50 BYTE),
12 CLZT VARCHAR2(50 BYTE),
13 CKZT VARCHAR2(50 BYTE),
14 ORG_ID VARCHAR2(50 BYTE)
15 );
表已创建。
SQL> insert into RD_LXPB_CORRESPONDENCE(LXID) select RD_LXPB_CORRESPONDENCE_SEQU.NEXTVAL from dual;
已创建 1 行。
SQL> select lxid from RD_LXPB_CORRESPONDENCE;
LXID
----------
4201
SQL> insert into RD_LXPB_CORRESPONDENCE(LXID) select RD_LXPB_CORRESPONDENCE_SEQU.NEXTVAL from dual;
已创建 1 行。
SQL> select lxid from RD_LXPB_CORRESPONDENCE;
LXID
----------
4201
4202
------解决方案--------------------
1)建议你用PLSQL DEVELOPER 查看Sequences的执行情况。
2)以下是我自己在Sql plus里做的测试
SQL> create sequence test_seq
2 increment by 1
3 minvalue 1
4 start with 1
5 nomaxvalue
6 nocycle
7 nocache
8 /
SQL> create table test2
2 (id number(6) primary key,
3 name varchar2(20));
表已创建。
SQL> create or replace trigger trg_test_id
2 before insert
3 on test2
4 for each row
5 begin
6 select test_seq.nextval into :new.id from dual;
7 end;
8 /
触发器已创建
SQL> insert into test2(name)
2 values('&name');