好困扰,求解答

lakerskobemvp 2014-09-15 09:49:03
表的id是自增的,通过一个作业向表中插入数据,但是插入操作后发现ID不是连续的,中间有断的,表没有删除操作,这是什么原因呢
...全文
113 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
freecodex 2014-09-15
  • 打赏
  • 举报
回复
引用 7 楼 lakerskobemvp 的回复:
[quote=引用 6 楼 dotnetstudio 的回复:] 回滚成功了肯定不会丢失,但是如果中间出现中断那就不一定
还有一个问题一个插入数据的作业正在运行,我给它强制终止了,然后再看表的时候发现数据在减少,这是回滚的原因还是其他呢[/quote]如果一个事务强制终止(外部异常),SSMS为了确保事务的完整性,会将这个事务回滚。
lakerskobemvp 2014-09-15
  • 打赏
  • 举报
回复
引用 6 楼 dotnetstudio 的回复:
回滚成功了肯定不会丢失,但是如果中间出现中断那就不一定
还有一个问题一个插入数据的作业正在运行,我给它强制终止了,然后再看表的时候发现数据在减少,这是回滚的原因还是其他呢
KeepSayingNo 2014-09-15
  • 打赏
  • 举报
回复
回滚成功了肯定不会丢失,但是如果中间出现中断那就不一定
lakerskobemvp 2014-09-15
  • 打赏
  • 举报
回复
引用 4 楼 dotnetstudio 的回复:
你存储过程中有哪些操作,如果有删除操作,那么就可能造成表的数据不联系
如果死锁回滚的话数据会丢失吗
KeepSayingNo 2014-09-15
  • 打赏
  • 举报
回复
你存储过程中有哪些操作,如果有删除操作,那么就可能造成表的数据不联系
lakerskobemvp 2014-09-15
  • 打赏
  • 举报
回复
引用 1 楼 yupeigu 的回复:
一般不会出现这种情况的,你用的是sql server 数据库吗? 除非有插入没有完成,就回滚的,这样可能会导致id之间产生空隙
是SqlServer,我那个表的数据现在有一千多万,存储过程插入的速度现在也慢,有没有可能是存储过程问题呢
俺是大菠萝 2014-09-15
  • 打赏
  • 举报
回复
id自增但不连续,除了人为删除外,最常见的就是回滚导致。比如死锁导致的回滚
LongRui888 2014-09-15
  • 打赏
  • 举报
回复
一般不会出现这种情况的,你用的是sql server 数据库吗? 除非有插入没有完成,就回滚的,这样可能会导致id之间产生空隙

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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