ALTER FULLTEXT CATALOG(Transact-SQL)
전체 텍스트 카탈로그의 속성을 변경합니다.
구문
ALTER FULLTEXT CATALOG catalog_name
{ REBUILD [ WITH ACCENT_SENSITIVITY = { ON | OFF } ]
| REORGANIZE
| AS DEFAULT
}
인수
- catalog_name
수정할 카탈로그의 이름을 지정합니다. 지정된 이름의 카탈로그가 없을 경우 Microsoft SQL Server는 오류를 반환하고 ALTER 작업을 수행하지 않습니다.
REBUILD
전체 카탈로그를 다시 작성하도록 SQL Server에 알려줍니다. 카탈로그를 다시 작성하면 기존 카탈로그가 파일 시스템에서 삭제되고 새 카탈로그가 해당 위치에 생성됩니다. 카탈로그를 다시 작성해도 데이터베이스 시스템 테이블의 전체 텍스트 메타데이터가 변경되지는 않습니다.REBUILD를 제대로 수행하려면 카탈로그가 있는 FILEGROUP이 온라인 상태이거나 읽기/쓰기가 가능한 상태여야 합니다. 다시 작성 후 전체 텍스트 인덱스가 다시 채워집니다.
WITH ACCENT_SENSITIVITY = {ON|OFF}
변경할 카탈로그의 전체 텍스트 인덱싱 및 쿼리에 대한 악센트 구분 여부를 지정합니다.전체 텍스트 카탈로그의 현재 악센트 구분 속성 설정을 확인하려면 FULLTEXTCATALOGPROPERTY 함수에 catalog_name의 accentsensitivity 속성 값을 사용합니다. 함수가 '1'을 반환하면 전체 텍스트 카탈로그가 악센트를 구분하고, '0'을 반환하면 악센트를 구분하지 않습니다.
카탈로그와 데이터베이스의 악센트 구분 기본값은 동일합니다.
REORGANIZE
인덱싱 과정에서 생성된 작은 인덱스를 하나의 큰 인덱스로 병합하는 마스터 병합을 수행하도록 SQL Server에 알려줍니다. 인덱스를 병합하면 성능이 향상되고 디스크 및 메모리 리소스를 확보할 수 있습니다. 전체 텍스트 카탈로그를 자주 변경하는 경우에는 이 명령을 주기적으로 사용하여 전체 텍스트 카탈로그를 다시 구성할 수 있습니다.REORGANIZE는 내부 인덱스 및 카탈로그 구조도 최적화합니다. 전체 텍스트 카탈로그가 있는 FILEGROUP과 전체 텍스트 인덱싱된 테이블이 있는 FILEGROUP에서 명령을 제대로 수행하려면 OFFLINE 또는 READONLY이면 안 됩니다.
인덱싱된 데이터 양에 따라 마스터 병합을 완료하는 데 많은 시간이 걸릴 수 있습니다.
- AS DEFAULT
이 카탈로그를 기본 카탈로그로 지정합니다. 카탈로그를 지정하지 않고 전체 텍스트 인덱스를 만들면 기본 카탈로그가 사용됩니다. 기본 전체 텍스트 카탈로그가 이미 있는 경우 이 카탈로그를 AS DEFAULT로 설정하면 기존 기본값보다 우선 적용됩니다.
사용 권한
사용자는 전체 텍스트 카탈로그에 대해 ALTER 권한이 있거나 db_owner, db_ddladmin 고정 데이터베이스 역할 또는 sysadmin 고정 서버 역할의 멤버여야 합니다.
[!참고] ALTER FULLTEXT CATALOG AS DEFAULT를 사용하려면 사용자에게 전체 텍스트 카탈로그에 대한 ALTER 권한과 데이터베이스에 대한 CREATE FULLTEXT CATALOG 권한이 있어야 합니다.
예
다음 예에서는 악센트가 구분되는 기본 전체 텍스트 카탈로그 ftCatalog
의 accentsensitivity
속성을 변경합니다.
--Change to accent insensitive
USE AdventureWorks;
GO
ALTER FULLTEXT CATALOG ftCatalog
REBUILD WITH ACCENT_SENSITIVITY=OFF;
GO
-- Check Accentsensitivity
SELECT FULLTEXTCATALOGPROPERTY('ftCatalog', 'accentsensitivity');
GO
--Returned 0, which means the catalog is not accent sensitive.
참고 항목
참조
CREATE FULLTEXT CATALOG(Transact-SQL)
DROP FULLTEXT CATALOG(Transact-SQL)