在 Oracle 中怎样实现自动编号?

9116 2004-07-21 02:21:57
在 Oracle 中怎样实现自动编号?

在企业管理器中和使用SQL的方法分别是怎么样的?这样操作?

谢谢?
...全文
140 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhpsam109 2004-07-21
  • 打赏
  • 举报
回复
使用序列!
DOUZHI80 2004-07-21
  • 打赏
  • 举报
回复
应该就只有使用触发器和序列的方法了。同意freddy2003()
militant 2004-07-21
  • 打赏
  • 举报
回复
MADE ,这个问题我问过了,可惜啊,好象也只有这个方法了,感觉就是每个表要对应一个SEQUENCE和触发器,能不能做一个通用行好一点的东西啊。
大家一起构思一下吧
dinya2003 2004-07-21
  • 打赏
  • 举报
回复
create sequence seq_name
increment by 1
start with 1
maxvalue 999999999
nocycle
cache 10

--使用:
insert into table(id,name) values(seq_name.nextval,'9116 (天马) ')
freddy2003 2004-07-21
  • 打赏
  • 举报
回复
oracle中怎样将字段建成象SQL2000中的ID自动+1的字段
两种方法
方法一:
  用触发器

建一个序列
create sequence a_seq increment by 1 start with 100;
建一个触发器, 自动+1
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;


方法二:
  建一个序列
create sequence a_seq increment by 1 start with 100;
在语句中+1
  insert into tbl(id,....)
values (a_seq.nextval,....)
zwj0712 2004-07-21
  • 打赏
  • 举报
回复
alter table 表名 add id int identity(1,1) 0 ;

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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