2010年01月02日   码农之路   9,682 次浏览

今天用JAVA向Oracle数据库中插数据时,每次都要去计算ID,觉得好麻烦,于是想到了用数据库自带的ID来做,具体如下:

1、首先得创建一序列

序列(SEQUENCE)序列是一数据库对象,利用它可生成唯一的整数。一个序列的值是由特殊的Oracle程序自动生成,因此序列避免了在应用 层实现序列而引起的性能瓶颈。该序列为上升序列,由1开始,增量为1,没有上限。在升序时,序列可从比最小值大的值开始,缺省值为序列的最小值。对于降 序,序列可由比最大值小的值开始,缺省值为序列的最大值。修改序列可以:? 修改未来序列值的增量。

ORACLE没有象SQL SERVER中一样的自增加字段,要实现只能通过SEQUENCE来实现,代码如下:

create sequence LY_TEST_SEQ
nocycle
maxvalue 9999999999
start with 1;

2、创建触发器实现自增:

create or replace trigger LY_FRUITLIST_TRIGGER
before insert on Ly_Fruitlist
referencing old as old new as new for each row
begin
select LY_TEST_SEQ.nextval into:new.FRUITID from dual;
end;
/

这样就可以在每次插入数据的时候实现ID自增长了。

PS:学会使用触发器是非常有用的,在一些数据库的增删改查操作中利用触发器可以省掉很多事。

赞 赏
申明:除非注明,本站文章均为原创,转载请以链接形式标明本文地址。 如有问题,请于一周内与本站联系,本站将在第一时间对相关内容进行处理。
本文地址: http://www.yyjjssnn.cn/articles/25.html
相关阅读: ORACLE, Oracle, ORACLE自增长, 触发器

>>> Hello World <<<

这篇内容是否帮助到你了呢?

如果你有任何疑问或有建议留给其他朋友,都可以给我留言。

目前有2条留言:

  • 1# 匿名:
    2011-01-17 15:59

    :idea: :-D

  • 2# 匿名:
    2010-02-01 14:34

    不错,谢谢啦 ^_^

:wink: :twisted: :surprised: :smile: :smile9: :smile8: :smile7: :smile6: :smile5: :smile56: :smile55: :smile54: :smile53: :smile52: :smile51: :smile50: :smile4: :smile49: :smile48: :smile47: :smile46: :smile45: :smile44: :smile43: :smile42: :smile41: :smile40: :smile3: :smile39: :smile38: :smile37: :smile36: :smile35: :smile34: :smile33: :smile32: :smile31: :smile30: :smile2: :smile29: :smile28: :smile27: :smile26: :smile25: :smile24: :smile23: :smile22: :smile21: :smile20: :smile1: :smile19: :smile18: :smile17: :smile16: :smile15: :smile14: :smile13: :smile12: :smile11: :smile10: :smile0: :sad: :rolleyes1: :redface: :razz: :question: :neutral: :mrgreen: :mad: :lol: :idea: :exclaim: :evil: :eek: :cry: :cool: :confused: :biggrin: :arrow:

友情链接: 程序员刘杨 刘杨
Copyright 2003~2018 保留所有权利 | 网站地图
备案号:湘ICP备14001005号-2

湘公网安备 43011102001322号