|
|
#11 |
|
Участник
|
В своё время написал скрипт для удаления мусора. С виртуальными компаниями работало тоже корректно, но давно не тестировал
![]() Может, пригодится... Код: -----------------------------------------
-- М.Андреев 28.04.2005
-- Скрипт удаляет все данные "чужих" компаний, которых не должно быть в текущей базе
-- Запускать нужно от пользователя-владельца таблиц аксапты
----- BEGIN OF SCRIPT ------------------
declare @name varchar(1000);
DECLARE CT CURSOR FOR
select name
from dbo.sysobjects
where xtype = 'U'
and id in
(select id
from dbo.syscolumns
where name = 'DATAAREAID');
OPEN CT
WHILE 1=1
begin
FETCH FROM CT INTO @name
IF @@fetch_status=-1
BREAK;
IF @@fetch_status=-2
CONTINUE;
exec ('delete from '+@name+
' where NOT DATAAREAID IN (select id from DATAAREA)');
PRINT @name;
end;
DEALLOCATE CT
--------- END OF SCRIPT ---------- |
|
|
|
| За это сообщение автора поблагодарили: alex55 (1). | |