create table T_TEST_TREE
(
  AUTO_ID    VARCHAR2(20) not null,
  TREE_NAME  VARCHAR2(20),
  TREE_DESC  VARCHAR2(20),
  TREE_PID   VARCHAR2(20),
  TREE_ISEND VARCHAR2(20)
)这个是表alter table T_TEST_TREE
  add constraint PK_TREE primary key (AUTO_ID)添加了一个主键创建的sequence
create sequence test_tree_sequence
increment by 1
start with 10011
nomaxvalue
nocycle
nocache创建触发器
create or replace trigger test_tree_trigger
before 
   insert on t_test_tree for each row
   begin
     select test_tree_sequence.nextval into :new.auto_id from dual
     end;都创建好以后但是我插入数据的时候就是报错啊
 insert into t_test_tree(tree_name,tree_desc,tree_pid,tree_isend) values('临漳','县','10008',0);帮忙

解决方案 »

  1.   

    触发器建的有问题
    create or replace trigger test_tree_trigger
    before
      insert on t_test_tree for each row
      
    begin
      select test_tree_sequence.nextval into :new.auto_id from dual;
      end;
    改成这个样子就可以了。下面的INSERT 也可以正常执行
      

  2.   

    create or replace trigger test_tree_trigger
    before insert on t_test_tree 
    for each row
    begin
         select test_tree_sequence.nextval into :new.auto_id from dual;少了分号
    end;