分享

ORA

 学习CB121 2012-06-21
1、建立数据表
create table test(
       id number(10) primary key,
       name varchar(30) not null,
       age number(5) not null,
       sex number(5) not null
);
2、创建自动增长序列
CREATE SEQUENCE test_Sequence
     start with 1     -- 从1开始计数 
     increment by 1  --每次增加1
     minvalue 1    --最小值1
     maxvalue  999999   --最大值999999
 -- nomaxvalue    --不设置最大值
     nocycle          -- 一直累加,不循环  
     nocache
     noorder;
3、创建触发器
CREATE OR REPLACE TRIGGER test_Trigger BEFORE
insert ON  test  FOR EACH ROW
begin
select test_Sequence.nextval into:New.id from sys.dual;
end;
 
测试:
insert into test(name,age,sex) values('test',12,1);
insert into test(name,age,sex) values('test',12,1);
insert into test(name,age,sex) values('test',12,1);
结果如下图:
ORA-00955:名称已由现有对象使用【oracle中创建自增主键】 - 熊猫京京 - pansandays weblog
 
=================================================================
后续:之前将 表的名字和触发器的名字 起成相同的名字了,结果报ORA-00955:名称已由现有对象使用的错误,如下图: 
ORA-00955:名称已由现有对象使用【oracle中创建自增主键】 - 熊猫京京 - pansandays weblog

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多