Решено: как да нулирам първичния ключ

Последна актуализация: 09/14/2023
Автор: SQL SourceTrail

Когато работите с бази данни в SQL, неизбежно ще дойде момент, когато ще трябва да нулирате първичния ключ в таблица. Първичният ключ е уникален идентификатор за всеки запис в таблица. Има някои ситуации, в които може да искате да нулирате тази стойност - например за целите на тестване, за коригиране на предишни грешки или след изтриване на данни. Но е важно да се отбележи, че първичният ключ е жизненоважен за поддържането на целостта на данните във вашата база данни, така че това не е действие, което трябва да се предприема леко.

В тази статия ще разгледаме как можете да нулирате първичен ключ в SQL. Това ще включва използване ТРАНСКАТА МАСА метод или DBCC ПРОВЕРКА команда за SQL Server и АВТОМАТИЧНО УВЕЛИЧАВАНЕ атрибут за MySQL.

Използване на TRUNCATE TABLE за нулиране на първичен ключ

- ТРАНСКАТА МАСА командата е специфична за таблица команда, която се използва за изтриване на всички записи от таблица и нулиране на нейната стойност за идентичност до първоначалната стойност по подразбиране.

Ето вашето ръководство стъпка по стъпка как да използвате тази команда:

TRUNCATE TABLE table_name;

Тази команда премахва всички редове от таблицата. Структурата на таблицата и нейните колони, ограничения, индекси и т.н. остават непокътнати. Трябва обаче да използвате тази команда внимателно. TRUNCATE TABLE е безопасна операция за транзакция, но не може да бъде върната назад.

Използване на атрибут AUTO_INCREMENT и DBCC CHECKIDENT

В MySQL атрибутът AUTO_INCREMENT може да се използва за генериране на уникална самоличност за нови редове. Можете да нулирате стойността AUTO_INCREMENT, както следва:

ALTER TABLE table_name AUTO_INCREMENT = value;

В SQL Server командата DBCC CHECKIDENT може да се използва за повторно зареждане на стойността за идентичност на таблица.

DBCC CHECKIDENT ('table_name', RESEED, 0);

Тази команда ще нулира стойността на колоната за самоличност на 0. Следващото вмъкване в тази таблица ще започне с 1.

Моля, имайте предвид, че промяната на първичен ключ може потенциално да наруши релационните връзки във вашата база данни. Това може да създаде осиротели записи или да причини дублиране на записи. Освен това нулирането на първичния ключ може също да засегне всички външни ключове, които го препращат. Ето защо е силно препоръчително да вземете предвид тези неща, преди да нулирате първичен ключ.

Подобни публикации: