Leebluemoon
2017-09-03 01:06
采纳率: 100%
浏览 1.3k

SQL server数据库同一张表同一字段实现自增排序

想在数据库中实现字段的自增排序,但是当删除某一行数据之后,新增数据会以被删除数据上一行数据进行自增。在删除数据而不新增数据时,被删除数据实现自动减一。保持原来排序,避免断档。
求教各位大佬(抱歉因为之前没说明白重新更改了一下问题)。

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • 啊喵是我 2017-09-04 04:04
    已采纳

    我懂你的意思,但是有个问题:当你的数据量变得很大时,你删除第一条数据,后面的ID都要自减一,这样的操作非常的浪费时间和资源,所以,最好不要考虑这样的思路,
    不过你可以插空,向被删的数据ID为12的位置,插入新的数据ID=12(用update)前提是你要把IDENTITY_INSERT关闭 _
    方法如下: SET IDENTITY_INSERT [tableName] ON
    update 。。。。。。
    SET IDENTITY_INSERT [tableName] OFF

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • threenewbee 2017-09-03 01:11

    不要把这个自增作为数据存在数据表中,相反,通过sql的rownumber功能在查询的时候输出行号。

    评论
    解决 无用
    打赏 举报
  • T_world 2017-09-03 01:12

    http://blog.csdn.net/zdw_wym/article/details/7596534

    这篇文章说的是利用触发器实现让特定字段有特定格式的编号,你可以修改触发器的逻辑,每次插入的时候获取当前最大id,加1后作为新的id

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题