USP_DROPALLINDEXES_FORTABLE
Parameters
Parameter | Parameter Type | Mode | Description |
---|---|---|---|
@TABLENAME | nvarchar(128) | IN |
Definition
Copy
create procedure bbdw.USP_DROPALLINDEXES_FORTABLE(
@TABLENAME sysname
)
as begin
declare @INDEXNAME nvarchar(128);
declare @DROPINDEXSQL nvarchar(max);
declare TABLEINDEXES cursor local fast_forward for
select NAME
from sys.indexes I
where
I.is_primary_key = 0
AND I.is_unique_constraint = 0
AND I.type not in (0, 1)
AND I.Object_id = object_id(@TABLENAME)
order by
I.index_id desc;
open TABLEINDEXES;
fetch next from TABLEINDEXES into @INDEXNAME;
while @@FETCH_STATUS = 0
begin
set @DROPINDEXSQL = N'drop index [' + @INDEXNAME + '] on ' + @TABLENAME;
exec sp_executesql @DROPINDEXSQL;
fetch next from TABLEINDEXES into @INDEXNAME;
end
close TABLEINDEXES;
deallocate TABLEINDEXES;
end