CLR(공용 언어 런타임) 통합을 사용하여 데이터베이스 개체 작성

적용 대상: SQL Server(지원되는 모든 버전)

.NET Framework CLR(공용 언어 런타임)과 SQL Server 통합을 사용하여 데이터베이스 개체를 빌드할 수 있습니다. Microsoft SQL Server 내부에서 실행되는 관리 코드를 "CLR 루틴"이라고 합니다. 이러한 루틴은 다음과 같습니다.

  • 스칼라 반환 사용자 정의 함수(스칼라 UDF)

  • 테이블 반환 사용자 정의 함수(TVF)

  • UDP(사용자 정의 프로시저)

  • 사용자 정의 트리거

CLR 루틴은 관리 코드에서도 구조가 동일하고 클래스의 공용 정적(Microsoft Visual Basic .NET에서 공유됨) 메서드에 매핑됩니다. .NET Framework를 사용하면 루틴뿐만 아니라 UDT(사용자 정의 형식)와 사용자 정의 집계 함수도 정의할 수 있습니다. UDT와 사용자 정의 집계 함수는 .NET Framework 클래스 전체에 매핑됩니다.

각 유형의 .NET Framework 루틴에는 Transact-SQL 선언이 있으며 Transact-SQL에 해당하는 SQL Server 어디에서나 사용할 수 있습니다. 예를 들어 스칼라 UDF는 모든 스칼라 식에 사용할 수 있고, TVF는 모든 FROM 절에 사용할 수 있습니다. 프로시저는 EXEC 문에서 호출되거나 클라이언트 애플리케이션에서 호출될 수 있습니다.

참고

쿼리 최적화 프로그램에서 적절하다고 판단할 경우 공용 언어 런타임에서 CLR 개체(사용자 정의 함수, 사용자 정의 형식 또는 트리거)의 실행은 여러 스레드(병렬 계획)에서 발생할 수 있습니다. 그러나 사용자 정의 함수가 데이터에 액세스하는 경우 실행은 직렬 계획에 있습니다. SQL Server 2008 이전 서버 버전에서 실행되는 경우 사용자 정의 함수에 LOB 매개 변수 또는 반환 값이 포함된 경우 실행도 직렬 계획에 있어야 합니다.

다음 표에는 이 섹션에서 다루는 항목이 나와 있습니다.

CLR 통합으로 작업 시작
SQL Server CLR 통합을 사용하여 개체를 컴파일하는 데 필요한 라이브러리 및 네임스페이스에 대한 간략한 개요를 제공합니다. "Hello World" CLR 저장 프로시저의 예도 포함되어 있습니다.

지원되는 .NET Framework 라이브러리
CLR 통합에서 지원되는 .NET Framework 라이브러리에 대한 정보를 제공합니다.

CLR 통합 프로그래밍 모델 제한 사항
CLR 통합 프로그래밍의 모델 제한 사항에 대한 정보를 제공합니다.

.NET Framework의 SQL Server 데이터 형식
SQL Server 데이터 형식 및 해당 .NET Framework 이에 해당하는 항목에 대한 개요입니다.

CLR 통합 사용자 지정 특성 개요
CLR 통합 사용자 지정 특성에 대한 정보를 제공합니다.

CLR 사용자 정의 함수
테이블 반환 함수, 스칼라 함수, 사용자 정의 집계 함수 등 여러 가지 종류의 CLR 함수를 구현하고 사용하는 방법에 대해 설명합니다.

CLR 사용자 정의 형식
CLR 사용자 정의 형식을 구현하고 사용하는 방법에 대해 설명합니다.

CLR 저장 프로시저
CLR 저장 프로시저를 구현하고 사용하는 방법에 대해 설명합니다.

CLR 트리거
CLR 트리거를 구현하고 사용하는 방법에 대해 설명합니다.

참고 항목

CLR(공용 언어 런타임) 통합 개요