티스토리 뷰

Computer/Databases

[MSSQL] INDEX Create 와 Drop

인생이글케쉬우냐 2009. 12. 18. 13:48
출처 : 책 SQL 400% 활용중에서 (209p)
참고 : http://www.notecopy.com/bbs/board.php?bo_table=mysql_study&wr_id=9

-- [기본 문법]

CREATE [UNIQUE]							-- 고유 인덱스 옵션
[CLUSTERED | NONCLUSTERED] INDEX idx_name	-- 클러스터 옵션
ON table_name : vu_name (col_name [ASC|DESC],...)	-- 정렬 옵션
	[ WITH { [PAD_INDEX]				-- 여유 공간 옵션
	[,FILLFACTOR = n] |					-- 페이지 채움 비율
	[,IGNORE_DUP_KEY] |					-- 중복키 무시 옵션
	[,DROP_EXISTING] |					-- 기존 인덱스 삭제 옵션
	[,STATISTICS_NORECOMPUTE]|			-- 통계 정보 갱신 안 함 옵션
	[,SORT_IN_TEMPDB]}]					-- 정렬을 tempdb에서 하도록 함
[ON filegroup]							-- 파일 그룹 지정 옵션
GO

DROP INDEX table_name.idx_name [,...]
GO


-- [예] 아래는 내가 원하는 옵션만 주고 기존 인덱스가 존재하면 삭제하게 하고 생성하는 클러스터드 인덱스문. 옵션을 따로 명시하지 않은 것은 default로 자동 셋팅 된다.

/****** Object:  Index [IX_TB_CELL_LOG]    Script Date: 12/18/2009 11:36:45 ******/
CREATE CLUSTERED INDEX [IX_TB_CELL_LOG] ON [dbo].[TB_CELL_LOG] 
(
	[TRACKER_ID] ASC,
	[LOG_DT] ASC,
	[LOG_TM] ASC,
	[EVENT_ID] ASC
)
WITH (DROP_EXISTING = ON) ON [PRIMARY]
디비는 역시 심오해~
반응형