CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Oracle >  基础和管理

oracle类似于sqlserver的自动增量字段怎么弄出来?

楼主tssungeng(修斯)2004-04-01 13:40:54 在 Oracle / 基础和管理 提问

id       name  
  -----------  
  1         qewrwer  
  2         sdfgdfgg  
  3         afbsfdhsdf  
  4         asdfasdfsdf  
   
   
  这样的,如何定义id这个字段成为自动增量? 问题点数:20、回复次数:7Top

1 楼welyngj(无爱)回复于 2004-04-01 13:57:49 得分 5

先创建一个序列:  
  create   sequence   seq1    
  start   with   1  
  increament   by     1;  
   
  然后;  
  create   trigger   tri_on_ins  
  before   insert    
  on   table_name  
  for   each   row  
  begin  
  select   seq1.nextval   into   :new.id;  
  end;  
  /  
  Top

2 楼likefox(狐妖)回复于 2004-04-01 14:29:54 得分 5

使用序列!!Top

3 楼tssungeng(修斯)回复于 2004-04-01 16:59:07 得分 0

什么地方有详细资料!Top

4 楼tssungeng(修斯)回复于 2004-04-01 17:07:19 得分 0

SYS_GUID  
  好不好用呀?Top

5 楼cxwsoftware(方宇)回复于 2004-04-01 19:05:33 得分 0

同意welyngj(平平淡淡)   !!!!Top

6 楼skystar99047(天星)回复于 2004-04-01 19:11:59 得分 5

方法:  
  1.创建sequence就可以  
  create   sequence   seq_name  
  minvalue   1  
  maxvalue   999999999999999999  
  start   with   1  
  increment   by   1  
  cache   20;  
  可以直接在插入时调用seq_name.nextval;  
  如insert   into   table_name(proid)   values(seq_name.nextval);  
   
  2.也可以创建触发器(同时要创建sequence):  
  create   or   replace   trigger   trg_name  
  before   insert   on   table_name  
  for   each   row  
  begin  
  select   seq_name.nextval   into   :new.proid   from   dual;  
  end;  
  /  
  Top

7 楼beckhambobo(beckham)回复于 2004-04-01 22:01:17 得分 5

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;Top

相关问题

  • oracle中如何创建子增量字段?
  • 请问现在我的oracle里面的id字段不是自增量的,我怎么才能把它改成从1000开始自增量的呢?
  • PB中的自动增量字段
  • Oracle中的自增字段
  • Oracle的TimeStamp型字段?
  • 在Oracle中写BLOB字段
  • oracle日期字段问题
  • 如何在ORACLE中实现类似SQLSERVER中的自增ID的字段?
  • sqlserver中image类型数据导到oracle里blob字段的问题
  • sqlserver有计算字段吗?

关键词

  • start
  • nextval
  • seq
  • sequence
  • 创建
  • trigger
  • insert
  • create
  • table

得分解答快速导航

  • 帖主:tssungeng
  • welyngj
  • likefox
  • skystar99047
  • beckhambobo

相关链接

  • Oracle类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo