SqlCompact ALTER COLUMN С ИДЕНТИЧНОСТЬЮ - PullRequest
0 голосов
/ 20 марта 2020

Я использую SQLServer Compact Edition 4.0.

Я создал новую таблицу динамически [newtable] с sql, которая заменит предыдущую [oldtable].

Таблица имеет другое имя, но та же структура. [Oldtable] имеет идентификатор поля, который представляет собой PrimaryKey и Identity.

Чтобы легко перемещать все записи в [newtable] с помощью этого простого SQL

"INSERT INTO [newtable] SELECT * FROM [oldtable];"

[ newtable] имеет идентификатор поля, который не является идентификатором.

После перемещения всех записей в [newtable] я хотел бы изменить поле идентификатора как Identity.

Я пробовал это, но не работа:

"ALTER TABLE [newtable] ALTER COLUMN [ID] int IDENTITY (2,1) NOT NULL"

Любая идея?

Мне нужно сделать эту операцию с SQL.

спасибо

1 Ответ

0 голосов
/ 20 марта 2020

Вы не можете изменить столбец как столбец идентификаторов. Вам нужно будет добавить новый столбец, чтобы иметь свойство identity, и скопировать другой столбец в новый столбец (с IDENTITY_INSERT, установленным в ON). Затем бросьте старый столбец.

...