반응형
/********************************************************************************************
-- Title : [2k5] 전체텍스트 검색 테스트
-- Reference : www.mcpworld.com 정원혁님
-- Key word : 전체텍스트 fulltext
********************************************************************************************/

/*
-- FT 만들기
-- http://www.microsoft.com/korea/msdn/library/sql/ISSUES/2003/sql_fulltextsearch/default.aspx
*/
-- DB 옵션에서 FT 가능하도록 설정
USE test;
GO

EXEC sp_fulltext_database 'enable';
GO

-- FT 카탈로그 만들기
EXEC sp_fulltext_catalog 'Cat_Desc', 'create', 'E:\ft';
GO

-- 테이블에 FT 인덱스 만들기
EXEC sp_fulltext_table 'dbo.TN03_Board', 'create', 'Cat_Desc', 'PK_tn03_board';
GO

-- 해당 컬럼 인덱스에 추가
EXEC sp_fulltext_column 'dbo.TN03_Board', 'title', 'add';

-- Population
EXEC sp_fulltext_table 'dbo.TN03_Board', 'start_full';
GO


/*
-- FT 사용하기
-- ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.ko/tsqlref9/html/996c72fc-b1ab-4c96-bd12-946be9c18f84.htm
*/
SELECT * FROM dbo.TN03_Board
WHERE CONTAINS(title, '검색');

SELECT * FROM dbo.TN03_Board
WHERE CONTAINS(title, '"검색" or "회원"');


SELECT * FROM dbo.TN03_Board
WHERE CONTAINS(title, '"검색" and "특허"');


SELECT * FROM dbo.TN03_Board
WHERE CONTAINS(title, '"정보*"');

SELECT * FROM dbo.TN03_Board
WHERE CONTAINS(title, '"정보*" or "회원*"');

SELECT * FROM dbo.TN03_Board
WHERE CONTAINS(title, '설문 NEAR 발표');

-- NEAR, FORMSOF, ISABOUT, INFLECTIONAL, THESAURUS...
-- 등 고급 연산화는 도움말에서 확인


/*
-- FT 지우기
*/
-- FT 인덱스 지우기
-- FT 카탈로그 지우기
-- FT 옵션 disable
-- FT 서비스 중지

반응형

+ Recent posts