Sql server 删除SQL Server 2016中表的列中生成的始终标识
我有一个具有以下模式的表Sql server 删除SQL Server 2016中表的列中生成的始终标识,sql-server,Sql Server,我有一个具有以下模式的表 CREATE TABLE [dbo].[ATMs] ( [StartTime] DATETIME2 (2) GENERATED ALWAYS AS ROW START NOT NULL CONSTRAINT [DF_M360_ATMs_StartTime] DEFAULT (SYSDATETIME()), [EndTime] DATETIME2 (2) GENERATED ALWAYS AS ROW END NOT NULL
CREATE TABLE [dbo].[ATMs]
(
[StartTime] DATETIME2 (2) GENERATED ALWAYS AS ROW START NOT NULL
CONSTRAINT [DF_M360_ATMs_StartTime] DEFAULT (SYSDATETIME()),
[EndTime] DATETIME2 (2) GENERATED ALWAYS AS ROW END NOT NULL
CONSTRAINT [DF_M360_ATMs_EndTime] DEFAULT ('9999-12-31'),
[ID] INT NOT NULL,
[UserID] UNIQUEIDENTIFIER NOT NULL,
[ApplicationID] VARCHAR(35) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
CONSTRAINT [DF_M360_ATMs_ApplicationID] DEFAULT ('??????'),
[ComputerNumber] SMALLINT NOT NULL
CONSTRAINT [DF_ATMs_ComputerNumber] DEFAULT ((-1)),
[SQLStatement] CHAR(1) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
CONSTRAINT [DF_M360_ATMs_SQLStatement] DEFAULT ('I'),
[IsTriggered] BIT NOT NULL
CONSTRAINT [DF_ATMs_IsTriggered] DEFAULT (1),
[Location] NVARCHAR(200) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL
)
我想在此表中插入一些测试值
但我不能在“StartTime”列中插入值,因为它始终生成标识
因此,我想删除该标识,然后在表中插入一些值,然后再次添加该标识
您能否帮助我删除标识或提供任何其他解决方案将值插入“开始时间”列?您是否尝试过对这些列使用默认值?我想你不必一次又一次地删除和添加这些列
INSERT INTO [dbo].[Department] ([DeptID] ,[DeptName] ,[ManagerID] ,
ParentDeptID], SysStartTime, SysEndTime)
VALUES(11, 'Sales', 101, 1, default, default);
有关更多详细信息:我查看了
时态表上的MSDN
。我认为我们不能禁用或覆盖该属性并插入我们自己的值