我有一个以前的 SQL Server DB 项目,我正在尝试将其转换为使用临时表。由于这个项目还没有部署,我打算用这个项目的新出版物替换我当前的实例。
使用“使用匿名历史表创建临时表”中的信息,我已将以下代码行添加到我的数据库创建表中。
SysStartTime DATETIME2 GENERATED ALWAYS AS ROW START NOT NULL,
SysEndTime DATETIME2 GENERATED ALWAYS AS ROW END NOT NULL,
PERIOD FOR SYSTEM_TIME (SysStartTime,SysEndTime),
和
WITH (SYSTEM_VERSIONING = ON);
例子:
CREATE TABLE [dbo].[Title Types] (
[Id] INT IDENTITY (1, 1) NOT NULL,
[Name] VARCHAR (MAX) NOT NULL,
SysStartTime DATETIME2 GENERATED ALWAYS AS ROW START NOT NULL,
SysEndTime DATETIME2 GENERATED ALWAYS AS ROW END NOT NULL,
PERIOD FOR SYSTEM_TIME (SysStartTime,SysEndTime),
CONSTRAINT [PK_Title Types] PRIMARY KEY CLUSTERED ([Id] ASC)
)
WITH (SYSTEM_VERSIONING = ON);
在 MS SSMS 中执行此代码运行良好,但在 Visual Studio 中会生成以下错误并阻止我构建项目。
SQL70633: System-versioned temporal table must have history table name explicitly provided.
是否需要更改设置以允许创建数据库项目anonymous history tables
?