Попробуйте, чтобы иметь таблицу с PK как часть определения таблицы
CREATE TABLE calendar
(
CalendarKey INT PRIMARY KEY NOT NULL,
FullDate DATE NOT NULL,
[DayOfWeek] VARCHAR(20) NOT NULL,
[DayOfMonth] INT NOT NULL,
[Month] VARCHAR(20) NOT NULL,
Qtr VARCHAR(2) NOT NULL,
[Year] VARCHAR(4) NOT NULL
);
Или это, чтобы иметь первичный ключ PK с идентификатором [auto counter]
CREATE TABLE calendar
(
CalendarKey INT PRIMARY KEY Identity(1,1) NOT NULL,
FullDate DATE NOT NULL,
[DayOfWeek] VARCHAR(20) NOT NULL,
[DayOfMonth] INT NOT NULL,
[Month] VARCHAR(20) NOT NULL,
Qtr VARCHAR(2) NOT NULL,
[Year] VARCHAR(4) NOT NULL
);
-Обратите внимание, что рекомендуется использовать prackets [], если имя столбца является зарезервированным ключевым словом, например [year]