У меня странная проблема при добавлении столбца в существующую таблицу.
Существующая таблица выглядит так:
CREATE TABLE [BinaryAssets].[BinaryAssets](
[BinaryAssetId] [int] IDENTITY(1,1) NOT NULL,
[BinaryAssetStructureId] [int] NOT NULL,
[Name] [nvarchar](max) NOT NULL,
[Created_By] [int] NOT NULL,
[Created_On] [bigint] NOT NULL,
[Modified_By] [int] NOT NULL,
[Modified_On] [bigint] NOT NULL,
[Active] [bit] NOT NULL,
CONSTRAINT [PK_BinaryAsset] PRIMARY KEY NONCLUSTERED
(
[BinaryAssetId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
Теперь sql, который я пытаюсь выполнить, выглядит так:
ALTER TABLE BinaryAssets.BinaryAssets ADD
[Version] INT NOT NULL CONSTRAINT DF_BinaryAssets_Version DEFAULT 1
ALTER TABLE BinaryAssets.BinaryAssets
DROP CONSTRAINT DF_BinaryAssets_Version
Когда я пытаюсь выполнить, я получаю sqlexception (см. Заголовок).
Теперь я не думаю, что мой стол превышает 8060, так в чем здесь проблема. Странно то, что когда я изменяю, например, Имя с nvarchar (max) на nvarchar (100), затем выполняю новый sql и затем возвращаю 100 к MAX, это работает ... логика кажется далеко здесь *
Кто-нибудь может сказать мне, что я здесь не так делаю?