在Sybase数据库中使用identify数据类型会不会经常出错?????

pinglv 2001-10-24 02:23:08
就是其值突然变得非常大。
然后,报溢出错误。

Sybase中不能用identify类型吗?
这不是应该是一个数据库最基本的类型吗?为什么总是用着不爽呢?


谁知道啊????
给我讲讲行吗?
...全文
176 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
Sevenori 2002-06-24
  • 打赏
  • 举报
回复
有这种事情?我们这个系统还想采用Sybase数据库那
okcai 2001-10-26
  • 打赏
  • 举报
回复
to:pinglv(☆水色双鱼☆) 
我的QQ是3363608。
pinglv 2001-10-25
  • 打赏
  • 举报
回复
最后再UP一下。
求解。然后就结贴啦。
pinglv 2001-10-24
  • 打赏
  • 举报
回复
北冥朋友有代码或者资料文件吗?
我想知道的详细些。

谢谢
pinglu@371.net
okcai 2001-10-24
  • 打赏
  • 举报
回复
用identity好处当然大家都是知道,不在罗嗦。
但是有时候会有问题的是,假如你想改变identiy的值,当然也可以用
set identity_insert TABLE_NAME on
set identity_insert TABLE_NAME off
来处理,不是很方便,而且不好改小。
好象还有个情况会发生,如果有两个事务同时处理,其中一个加锁,则会发生另外一个事务
出现很大的值。
给你个建议,取消identity属性,专门建另外一个表,只有一个identity
列,然后建立一个存储过程,专门来取这个ID值,在存储过程先插入,然后再回滚。
就像oracle的序列一样。



pinglv 2001-10-24
  • 打赏
  • 举报
回复
呵呵,不是D版哟。
不过。找Sybase麻烦就可以解决问题了吗?
我有点不太相信Sybase的技术支持。
我的Sybase Replication Server的问题还是自己解决的。
zhuzhichao 2001-10-24
  • 打赏
  • 举报
回复
如果是D版,不能找Sybase的麻煩,
試試該語句:
DBCC CHECKIDENT (tablename, RESEED, n); --n為你想重置的數值
pinglv 2001-10-24
  • 打赏
  • 举报
回复
bigman_wang
那可不行。我怎么能频繁的重建表。
不得已,我把表结构都改了。
可是我想知道是什么原因。
数划云1 2001-10-24
  • 打赏
  • 举报
回复
你把表清空之后,为了保证identify类型不变的很大,需要重建表。
zhuzhichao 2001-10-24
  • 打赏
  • 举报
回复
這個問題不是你的原因.
如果你是正版,請打電話請求Sybase的技術支持.
我有幾個朋友都遇到過該問題.

BTW:SQL Server從來不會出現這種問題.

2,598

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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