Service Broker 인프라를 기반으로 구축된 쿼리 알림을 통해 애플리케이션은 데이터 변경 시 알림을 받을 수 있습니다. 이 기능은 웹 애플리케이션 같이 데이터베이스의 정보 캐시를 제공하고 원본 데이터가 변경되면 알림을 받아야 하는 애플리케이션에 매우 유용합니다.
Microsoft. Data.SqlClient는 쿼리 알림에 대해 다음 두 가지 클래스를 제공합니다.
SqlNotificationRequest를 사용하여 알림 요청과 함께 명령을 실행하고 Service Broker 메시지를 직접 처리합니다.
SqlDependency 이벤트를 통해 변경 사항을 감지하려면
OnChange을 사용합니다. Microsoft. Data.SqlClient는 수신기를 관리하고 이벤트 인수에 알림 정보를 노출합니다.
Important
새 개발에는 System.Data.SqlClient를 사용하지 마세요. 대신 Microsoft.Data.SqlClient를 사용하세요. ASP.NET Framework SqlCacheDependency 클래스는 System.Data.SqlClient이(가) 필요하며 Microsoft.Data.SqlClient와 통합되지 않습니다. 새 Microsoft.Data.SqlClient 애플리케이션은 SqlDependency.OnChange을(를) 구독하고 애플리케이션의 캐시 API를 통해 항목을 무효화합니다.
쿼리 알림은 원본으로 사용하는 데이터의 변경에 대한 응답으로 표시나 캐시를 새로 고쳐야 하는 애플리케이션에 유용합니다. SQL Server에서는 동일한 명령이 처음에 검색된 결과 집합과 다른 결과 집합을 생성하는 경우 .NET 애플리케이션이 명령을 보내고 알림을 요청할 수 있습니다. 서버에서 생성되는 알림은 나중에 처리되도록 큐를 통해 전송됩니다.
EXECUTE 및 SELECT 문에 대한 알림을 설정할 수 있습니다.
EXECUTE 문을 사용할 때 SQL Server는 명령 자체가 아니라 실행된 EXECUTE 문에 대한 알림을 등록합니다. 명령은 SELECT 문에 대한 요구 사항 및 제한 사항을 충족해야 합니다. 알림을 등록하는 명령에 문이 두 개 이상 포함되어 있으면 데이터베이스 엔진은 일괄 처리에 있는 각 문에 대해 알림을 만듭니다.
데이터 변경 시에 신뢰할 수 있는 초 단위 알림이 필요한 애플리케이션을 개발하고 있는 경우, 알림에 대한 계획 문서의 효율적인 쿼리 알림 전략 계획 및 쿼리 알림 대안 섹션을 검토하십시오. 쿼리 알림 및 SQL Server Service Broker에 대한 자세한 내용은 다음 SQL Server 설명서의 문서에 대한 다음 링크를 참조하세요.
SQL Server 설명서
이 섹션에서
쿼리 알림 사용 쿼리 알림 활성화 및 사용에 필요한 요구 사항 등 쿼리 알림 사용 방법을 설명합니다.
SqlDependency로 변경 내용 감지 쿼리 결과가 원래 수신된 결과와 다를 때를 감지하는 방법을 보여 줍니다.
SqlNotificationRequest를 사용한 SqlCommand 실행 쿼리 알림을 위해 SqlCommand SqlNotificationRequest 개체를 구성하는 방법을 보여 줍니다.
참조
SqlNotificationRequest SqlNotificationRequest클래스와 해당 멤버 전체에 대해 설명합니다.
SqlDependency SqlDependency클래스와 해당 멤버 전체에 대해 설명합니다.
SqlCacheDependency System.Data.SqlClient용 ASP.NET Framework 캐시 종속성 클래스를 설명합니다. Microsoft.Data.SqlClient 종속성을 래핑하지 않습니다.