oracle的自增类型是什么?

xyzhh 2004-01-15 05:18:51
同上,谢谢!
...全文
137 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
willway 2004-01-16
  • 打赏
  • 举报
回复
create sequence seqid increment by 1 start with 1 nocycle
-----------------------------------------------------------
INSERT INTO ora.tblname
VALUES(ora.seqid.NEXTVAL,'AAA');
huangyan168168 2004-01-16
  • 打赏
  • 举报
回复
oracle 中没有自增数据类型,用序列发生器(sequence)
beckhambobo 2004-01-15
  • 打赏
  • 举报
回复
CREATE SEQUENCE USERID INCREMENT BY 1 START WITH 1
MAXVALUE 1.0E28 MINVALUE 1 NOCYCLE
NOCACHE NOORDER;
/
CREATE OR REPLACE TRIGGER USERADD
BEFORE INSERT ON MEMBERRG
FOR EACH ROW
BEGIN
SELECT LPAD(USERID.NEXTVAL,4,'0') INTO :NEW.NUM FROM DUAL;
END;
/
baojianjun 2004-01-15
  • 打赏
  • 举报
回复
ORACLE没有象SQL SERVER中一样的自增加字段,
要实现只能通过SEQUENCE来实现

1.创建序列:
create sequence your_seq
nocycle
maxvalue 9999999999
start with 1;

2.使用触发器实现自增:
create or replace trigger your_seq_tri
before insert on your_table1 for each row
declare
next_id number;
begin
select your_seq.nextval into next_id from dual;
:new.id := next_id;
end;
zlqs 2004-01-15
  • 打赏
  • 举报
回复
使用sequence+trigger
smallcrocodile 2004-01-15
  • 打赏
  • 举报
回复
自己搜索一下,别浪费银子了
ern 2004-01-15
  • 打赏
  • 举报
回复
sequence

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧