이벤트 기록 테이블 정의
이벤트 기록은 응용 프로그램 데이터베이스에 있는 보조 이벤트 테이블입니다. 이벤트 기록을 사용하여 이벤트 데이터를 저장하려는 경우 이벤트 클래스를 정의할 때 기록 테이블을 정의해야 합니다.
기록 테이블
이벤트 클래스를 정의할 때 Transact-SQL을 사용하여 하나 이상의 기록 테이블을 정의할 수 있습니다. 이 CREATE TABLE 문에 테이블 이름, 필드 이름 및 필드 데이터 형식이 포함되어야 합니다. 이 문에는 제약 조건에 대한 인수 및 기타 선택적 CREATE TABLE 매개 변수가 포함될 수도 있습니다. 또한 이벤트 기록 테이블에 인덱스를 만들기 위한 CREATE INDEX 문을 포함시킬 수도 있습니다. 자세한 내용은 CREATE TABLE(Transact-SQL)을 참조하십시오.
응용 프로그램에서 액세스할 수 있는 모든 데이터베이스의 모든 스키마에서 기록 테이블을 만들 수 있습니다. 특히 이벤트 기록 규칙 및 구독 규칙을 발생시키는 생성자는 이벤트 기록 테이블에서 데이터를 읽고 쓸 수 있어야 합니다.
Notification Services는 응용 프로그램을 업데이트할 때 자동으로 이벤트 기록 테이블을 삭제하지는 않습니다. 기록 테이블을 만드는 문은 이름이 같은 테이블이 있는 경우 실패합니다. INFORMATION_SCHEMA.TABLES 뷰를 사용하여 테이블이 있는지 확인한 다음 테이블 생성을 건너뛰거나 해당 테이블을 삭제했다가 다시 만드십시오.
다음 예에서는 이름이 dbo.StockEventChron인 기존 테이블을 삭제한 다음 StockSymbol 및 StockHighPrice라는 두 열과 주 키로 StockSymbol을 가진 StockEvents 이벤트 클래스에 대한 기록을 만듭니다.
IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_NAME = 'StockEventsChron'
AND TABLE_SCHEMA = 'dbo')
DROP TABLE dbo.StockEventsChron;
CREATE TABLE dbo.StockEventsChron
(
StockSymbol char(10),
StockHighPrice decimal(18,5)
PRIMARY KEY (StockSymbol)
);
[!참고] XML 파일에 응용 프로그램을 정의할 경우 '>'와 같은 예약된 XML 문자를 해당 엔터티 참조로 바꾸어야 합니다. 자세한 내용은 XML Reserved Characters를 참조하십시오.
이벤트 기록 테이블을 정의하려면 다음 항목을 참조하십시오.
참고 항목
개념
핵심 이벤트 클래스 속성 정의
이벤트 클래스에 대한 인덱스 정의
Notification Services 보안 설정
Notification Services 데이터베이스 역할
관련 자료
이벤트 클래스 정의
Notification Services 응용 프로그램 정의