
Повторното зареждане на единична таблица на сървъра е решаващ аспект в SQL програмирането. Понякога може да се наложи да нулирате стойностите за самоличност на таблица на SQL Server. Това може да се случи поради процедура на тестване или дори след изтриване на някои записи. Въпреки това, тази задача не трябва да е плашеща. С командата DBCC CHECKIDENT на SQL Server процесът е доста лесен. Тази команда е отговорна за проверката на текущата стойност за самоличност за посочената таблица в SQL Server и може също да помогне при повторното зареждане на стойността за самоличност.
За да разберете как работи тази команда, струва си да я разгледаме по-отблизо DBCC ПРОВЕРКА. Командата за управление DBCC CHECKIDENT се използва за нулиране на брояча на самоличността в SQL Server. По-конкретно, той се използва, когато презареждате колона за самоличност на таблицата.
DBCC CHECKIDENT (‘databasename.dbo.tablename’)
Горната SQL заявка ще покаже текущата стойност на идентичност за дадената таблица. Ако съобщението за връщане гласи „Проверка на информация за самоличност“, това означава, че текущата стойност на самоличността е правилна.
Въпреки това, ако някой желае да промени текущата стойност на самоличността, ще трябва да използва опцията за повторно зареждане в командата.
DBCC CHECKIDENT с Reseed
Опцията за повторно зареждане служи за промяна на текущата самоличност на нова стойност. Важно е да се отбележи, че следващата вмъкната стойност на идентичност ще бъде новозаредената стойност плюс стойността на нарастване.
DBCC CHECKIDENT (‘databasename.dbo.tablename’, RESEED, new_reseed_value)
Горната команда променя самоличността на new_reseed_value. След изпълнение на тази команда, следващото вмъкване в таблицата ще вземе new_reseed_value плюс увеличението на самоличността.
Повторно зареждане до конкретна стойност
Например, ако желаете да поставите отново стойността 20, ще използвате следната команда.
DBCC CHECKIDENT (‘databasename.dbo.tablename’, RESEED, 20)
След изпълнение на тази команда, следващата въведена стойност за самоличност ще бъде 21, като се има предвид, че нарастването на идентичността е 1.
Внимание при повторно засяване
Въпреки че повторното засяване е полезна функция, изключително важно е да бъдете внимателни, когато го правите. Повторното зареждане може да доведе до грешки на SQL Server, ако се опита да генерира стойност за самоличност, която вече съществува в таблицата. Това може да се избегне, като се гарантира, че новата стойност е по-голяма от всяка съществуваща стойност в таблицата.
Разбирането на връзката между базите данни и таблиците и, което е по-важно, овладяването на различните команди, които ги манипулират, е основна част от това да си разработчик на SQL Server. Възможността за повторно въвеждане на самоличността на една таблица не само решава уместни предизвикателства, но също така отваря вратата към по-голяма гъвкавост и контрол на командите. В резултат на това разработчиците могат да създават по-ефективни и сложни бази данни.
Сега, след като разбираме повече за командата DBCC CHECKIDENT и нейните подкоманди, обработката и манипулирането на таблиците на базата данни на SQL Server става по-управляемо. Освен това, тези команди са не само полезни административно, но и полезни за оптимизиране на начина, по който се съхраняват данните, като по този начин създават по-рационализирани софтуерни части.