我有一个简单的税率表
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[TaxRates](
[Id] [bigint] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NULL,
CONSTRAINT [PK_TaxRates] PRIMARY KEY CLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
如果用户删除了记录,我希望在下次插入时不要更改自动增强器。
要有更多的许可。
现在我有3条记录,ID为0,1和2.当我删除Id 2的行时,稍后我添加下一个税率,我希望在此表中有记录,如0,1,2之前。 不应该有像0,1,2,4,6那样的差距。它必须是触发器。
你可以帮忙吗?
答案 0 :(得分:1)
您需要接受差距或不使用IDENTITY
答案 1 :(得分:0)
一个选项,如果标识列已成为组织中传递的内容,则将该列复制到同一个表中的非标识列中,您可以随意修改这些新的id值,同时保留实际的标识字段。
打开和关闭identity_insert可以允许您插入标识值。