ITPUB??ì3
ITPUB论坛 » Oracle数据库管理 » oralce断号现象

标题: oralce断号现象
离线 Arrayfoxcpu
一般会员



精华贴数 0
个人空间 0
技术积分 210 (8946)
社区积分 0 (744216)
注册日期 2006-1-23
论坛徽章:0
      
      

发表于 2007-6-8 11:08 
oralce断号现象

oralce表中的一个主键,单数却出现断号现象,主键是用序列加触发器生成的,并发很好,但是就是出现断现象,我想是在事务会滚等异常引起的,应该怎么设计才能避免这种现象?


只看该作者    顶部
离线 ruishi
老会员



精华贴数 0
个人空间 0
技术积分 1287 (1317)
社区积分 1 (34830)
注册日期 2004-6-29
论坛徽章:3
会员2007贡献徽章授权会员生肖徽章2007版:鼠   
      

发表于 2007-6-8 13:39 
sequence 采用no cache 试试
默认是cache 20
但是不采用缓存的话,效率会稍差,另外完全避免可能还是不行,除非程序控制。


__________________
如是我闻
只看该作者    顶部
在线/呼叫 warehouse
自由职业



来自 大连
精华贴数 3
个人空间 0
技术积分 17807 (51)
社区积分 686 (1144)
注册日期 2002-8-16
论坛徽章:53
现任管理团队成员海蓝宝石祖母绿2008北京奥运纪念徽章:自行车2008北京奥运纪念徽章:艺术体操2008北京奥运纪念徽章:皮划艇激流回旋
BLOG每日发帖之星     

发表于 2007-6-8 13:58 
no cache影响性能
用keep放到shared spool中试试


__________________
只看该作者    顶部
离线 kwin
中级会员


精华贴数 0
个人空间 0
技术积分 533 (3567)
社区积分 463 (1435)
注册日期 2004-11-17
论坛徽章:1
生肖徽章2007版:鸡     
      

发表于 2007-6-8 14:05 
你可以考虑用一个 table 来存放序号,序列号只是一个流水号,Oracle 不能保证它是连续的。


__________________
只看该作者    顶部
离线 gengyonghui
老耿


精华贴数 1
个人空间 0
技术积分 5865 (223)
社区积分 144 (2785)
注册日期 2004-8-28
论坛徽章:13
会员2007贡献徽章授权会员ITPUB新首页上线纪念徽章数据库板块每日发贴之星数据库板块每日发贴之星数据库板块每日发贴之星
数据库板块每日发贴之星数据库板块每日发贴之星数据库板块每日发贴之星生肖徽章:狗数据库板块每日发贴之星数据库板块每日发贴之星

发表于 2007-6-8 14:51 
序列取出来的时候就已经定下来了,对于事务回滚这种情况,没有办法。


__________________
msn:gengyonghui@hotmail.com
blog:http://gengyonghui.itpub.net
只看该作者    顶部
离线 lfree
版主


精华贴数 3
个人空间 6
技术积分 25041 (36)
社区积分 2667 (463)
注册日期 2005-3-4
论坛徽章:62
现任管理团队成员ITPUB元老管理团队2006纪念徽章会员2007贡献徽章会员2006贡献徽章授权会员
2008北京奥运纪念徽章:篮球行业板块每日发贴之星2008北京奥运纪念徽章:皮划艇激流回旋2008北京奥运纪念徽章:射箭2008北京奥运纪念徽章:马术数据库板块每日发贴之星

发表于 2007-6-8 15:10 
seq oracle 并不能保证连续的。
比如回滚,或者突然关机,cache的号就丢失了。


__________________
好好学习,天天向上!
只看该作者    顶部
离线 wabjtam123
高级会员



精华贴数 0
个人空间 0
技术积分 7554 (169)
社区积分 47 (4966)
注册日期 2007-3-3
论坛徽章:10
会员2007贡献徽章生肖徽章2007版:鸡生肖徽章2007版:鼠数据库板块每日发贴之星数据库板块每日发贴之星数据库板块每日发贴之星
数据库板块每日发贴之星数据库板块每日发贴之星数据库板块每日发贴之星数据库板块每日发贴之星  

发表于 2007-6-8 17:06 


QUOTE:
最初由 lfree 发布
seq oracle 并不能保证连续的。
比如回滚,或者突然关机,cache的号就丢失了。


回滚也会啊?


只看该作者    顶部
离线 love2008
~耗子王~


精华贴数 0
个人空间 30
技术积分 1699 (968)
社区积分 129 (2933)
注册日期 2006-1-19
论坛徽章:6
会员2007贡献徽章授权会员生肖徽章2007版:鼠生肖徽章2007版:猴生肖徽章2007版:鸡ITPUB新首页上线纪念徽章
      

发表于 2007-6-8 17:14 


QUOTE:
最初由 wabjtam123 发布


回滚也会啊?


序列是不会回滚的


__________________
失败一次,分析一次。-----直到永远不失败。虚心向各位高手学习。-----直到ORACLE公司倒闭。凡事不要找客观原因。-----一切用实践说话。帮别人= 帮自己。
只看该作者    顶部
在线/呼叫 zhang41082
高级会员


精华贴数 1
个人空间 0
技术积分 5860 (224)
社区积分 432 (1498)
注册日期 2002-10-11
论坛徽章:8
会员2007贡献徽章会员2006贡献徽章授权会员体育版块博采纪念徽章2008年新春纪念徽章生肖徽章2007版:鼠
ITPUB新首页上线纪念徽章数据库板块每日发贴之星    

发表于 2007-6-8 19:21 
版主说的回滚指你查询的时候把SEQ取出来了,可是你的事务最后没有提交,回滚了,seq退不回去了,所以不连续。回滚是指事务的回滚


__________________
MSN:zhang410822#163.comBLOG:zhang41082.itpub.net
只看该作者    顶部
 
    

相关内容


CopyRight 1999-2006 itpub.net All Right Reserved.
北京皓辰广域网络信息技术有限公司. 版权所有
E-mail:Webmaster@itpub.net
京ICP证:010037号 联系我们 法律顾问