Как я могу заставить Sql Server CE начать идентификацию с 1? - PullRequest
1 голос
/ 08 августа 2011

Я не могу использовать таблицу усечений в SQL Server CE (досадно), поэтому я использую:

drop table mytable

Однако, когда я заново вставляю строки, идентификаторы выбираются с того места, где они остановились. Есть ли способ запустить Id снова с нуля?

1 Ответ

4 голосов
/ 09 августа 2011

Введите DBCC CHECKIDENT:

Проверяет текущее значение идентификатора для указанной таблицы и, если необходимо, изменяет значение идентификатора.

Использование:

USE AdventureWorks;
GO
DBCC CHECKIDENT ('HumanResources.Employee', RESEED, 30)
GO

В вашем случае

Use YourDBName
GO
DBCC CHECKIDENT('YourTableName', RESEED, 0)
GO

Замените YourDBName на имя вашей базы данных и замените YourTableName именем вашей таблицы, а затем повторно введите значение, последний параметр (0 в этом случае) переустановит ваш идентификатор на это значение.

Редактировать

Просто прочитайте, что DBCC CHECKIDENT недоступен в версии CE.

В этом случае используйте ALTER TABLE tableName ALTER COLUMN ID Identity (999, 1)

(999новый максимум столбца ID) ...

...