Увеличение автоинкремента в существующей таблице SQL - PullRequest
1 голос
/ 29 февраля 2012

Я унаследовал систему, которая имеет несколько недостатков. Из-за недосмотра в дизайне системы мы столкнемся с проблемами будущих записей. В конечном итоге это приведет к конфликту с другой таблицей.

Автоматические выигрыши первичного ключа этой таблицы равны 1 каждый раз, когда импортируется новая запись. В настоящее время в таблице около 50 записей. Я хотел бы иметь возможность иметь первичный ключ следующей новой записи, равный 60 000. После этого следующая запись будет 60001, 60002 и т. Д.

Могу ли я безопасно изменить эту таблицу так, чтобы «Приращение идентичности» составляло 59950, затем вставить запись, затем снова изменить таблицу и установить для «Приращения идентичности» значение 1?

Спасибо!

Ответы [ 2 ]

5 голосов
/ 29 февраля 2012

Посмотрите на DBCC CHECKIDENT

http://msdn.microsoft.com/en-us/library/ms176057.aspx

Не проверено, но что-то вроде DBCC CHECKIDENT ("MyTable", RESEED, 60000)

1 голос
/ 29 февраля 2012

Если для суррогатного идентификатора важны порядок или значения, вы, вероятно, присвоили ему ценность для бизнеса.Я бы пересмотрел то, что вы спрашиваете, поскольку это, вероятно, первая из многих проблем для вашего дизайна!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...