[请教]插入新的记录时 如何自动更新标识列

berrylala 2009-08-03 03:59:06
请问一下:
在表tb中 rec_no为主键 现在想插入一条新的记录 新记录的rec_no=5 而原表中从rec_no=5的记录开始 每条记录的rec_no值都分别增加1 用SQL语句该怎么实现呢 谢谢

其中:
(1)tb表是从Excel中导入SQL Server的 导入后通过SQL语句 将rec_no列设为主键 所以也不清楚能否称得上是严格意义上的自增列
(2)tb表导入SQL Server后 还按照另外的字段进行了重新排序操作(不再按rec_no列排序)

不知道该怎么实现呢 我自己查了查相关资料 没有什么思路 请大家帮忙看看 非常感谢
...全文
126 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
berrylala 2009-08-03
  • 打赏
  • 举报
回复
恩 还是用个笨方法
先update tb set rec_no=rec_no+1 where rec_no>4
再插入rec_no=5的一条新记录值
zwzw911 2009-08-03
  • 打赏
  • 举报
回复
update tbl set rec_no=rec_no+1
berrylala 2009-08-03
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sdhdy 的回复:]
你这个思路有问题,要么你就干脆用一个自增列。
[/Quote]
请问一下思路有问题是什么意思 能说得详细一些吗 多谢了
ashou706 2009-08-03
  • 打赏
  • 举报
回复
rec_no = newid()
黄_瓜 2009-08-03
  • 打赏
  • 举报
回复
自增列 可以满足你的要求
sdhdy 2009-08-03
  • 打赏
  • 举报
回复
你这个思路有问题,要么你就干脆用一个自增列。
htl258_Tony 2009-08-03
  • 打赏
  • 举报
回复
这些事性自增列属性就能处理了.
guguda2008 2009-08-03
  • 打赏
  • 举报
回复
INSERT INTO TB(REC_NO)
SELECT MAX(REC_NO)+1
这样?

34,872

社区成员

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

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