永发信息网

求教非主键自增方法。非主键~~(并发问题)

答案:6  悬赏:60  手机版
解决时间 2021-11-22 14:00
  • 提问者网友:疯孩纸
  • 2021-11-22 08:40
求教非主键自增方法。非主键~~(并发问题)
最佳答案
  • 五星知识达人网友:平生事
  • 2021-11-22 10:12
设A表、id为主键、keyid字段可为空
触发器
create trigger t_i on A
for insert
as
begin
update a set keyid=(select max(keyid)+1 from a) where id in(select id from inserted)
end追问触发器操作当前的表会不会报错呢,因为我看了下触发器例子,那些触发器都是操作别的表的,而不是当前正在写入的表
全部回答
  • 1楼网友:鱼芗
  • 2021-11-22 14:16
程序的事务处理有问题吧。每个事务都是forupdate,避免同时更新。
  • 2楼网友:woshuo
  • 2021-11-22 14:01
设置为标识列,但不是主键!不过会有问题,删除后不会连续编号!
  • 3楼网友:醉吻情书
  • 2021-11-22 12:37
只有用事务了
  • 4楼网友:大漠
  • 2021-11-22 11:59
每次插值的时候你把之前的最大值查出来加1 在插入
  • 5楼网友:英雄的欲望
  • 2021-11-22 11:07
字段keyID属性中有一个标识种子,设置为true,递增量设置为1(sql server中)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯