当前位置:服务支持 >  软件文章 >  Sybase自增字段跳号解决方法 常见问题修复方案

Sybase自增字段跳号解决方法 常见问题修复方案

阅读数 7
点赞 0
article_banner

Sybase自增字段是我们经常遇到的问题,下面就为您分析Sybase自增字段跳号的原因,并给出解决的方法,希望能够帮助到您。

Sybase自增字段跳号原因及影响:

在Sybase数据库中如果数据库在开启的情况下,因为非正常的原因(死机、断电)而导致数据库服务进程强制结束。

那么自动增长的字段将会产生跳号的情况,再往数据表里面插入记录时,自增字段会跳到一个相当大的值上面,以至于主键的自增值极有可能被用尽,或由于数值太大,应用程序中的数据类型如int型等已无法容下这么大的值,而无法在程序里面进行相关的操作。

Sybase自增字段调号解决办法:

如果还未发生过跳号情况,可按如下办法解决:

1.执行
【 select 'sp_chgattribute ' + name + ', ''' + 'identity_gap' + '''' + ', 60 go'
 from sysobjects
 where type='U'】。
其中的60是凭感觉给的一个值,一般来说这个值越大性能越好,但越大,再发生数据库服务进程非正常结束时,所跳的号也就越大。

2.对1执行的结果,拷贝到SQL编辑区域,再执行。
若已经发生跳号,需要将表中数据导出,再重建数据表,再执行1和2。再导入数据。

后话:

Sybase自增字段有个***的问题是,再移植数据库时,如果是按自增主键进行关联的数据表,在数据重新导入后,可能出现主从表的外键无法关联的情况,我是开始时没预料到这样的情况,现木已成舟,没有办法了。 以后还是要慎用自增字段作为主键。


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删
相关文章
QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空