Как переиндексировать базу данных 1C+MS-SQL?   

Иногда (крайне редко) возникает необходимость переиндексировать пользовательские таблицы базы данных 1C+MS-SQL. Так как конфигуратор этого не позволяет, мы можем запустить хранимую процедуру _1sp_DBReindex, либо выполнить аналогичный код в SQL Query Analizer'е, если такой процедуры в базе нет (не база):

DECLARE @TableName char(32)
DECLARE SysCur CURSOR FOR SELECT name FROM sysobjects WHERE type=
'U'
OPEN SysCur
FETCH NEXT FROM SysCur INTO @TableName
WHILE @@FETCH_STATUS=0 BEGIN
DBCC DBREINDEX(@TableName)
FETCH NEXT FROM SysCur INTO @TableName
END
CLOSE SysCur
DEALLOCATE SysCur

 


 

Перепечатка, воспроизведение в любой форме, распространение, в том числе в переводе, любых материалов с сайта www.softpoint.ru возможны только с письменного разрешения компании "СофтПоинт". Это правило действует для всех без исключения случаев, кроме тех, когда в материале прямо указано разрешение на копирование (основание: Закон Российской Федерации "Об авторском праве и смежных правах").