C# 언어 확장이란?
적용 대상: SQL Server 2019(15.x) 이상 버전
C# 언어 확장은 SQL Server 내에서 C# 코드를 실행하는 데 사용할 수 있는 SQL Server 언어 확장의 기능입니다. 기존 SQL Server 테이블을 C# 애플리케이션에 DataFrame으로 전달하고, 풍부한 라이브러리를 사용하여 C#에서 작업을 수행하고, 결과 집합을 다시 가져올 수 있습니다. 이 C# 언어 확장을 사용하면 기존의 C# 코드, 계산, 논리 또는 T-SQL(Transact-SQL)에서는 얻을 수 없는 기능을 제공하는 방대한 라이브러리를 다시 사용할 수 있습니다.
외부 C# 언어는 CREATE EXTERNAL LANGUAGE를 사용하여 정의됩니다. sp_execute_external_script 시스템 저장 프로시저는 C# 코드를 실행하기 위한 인터페이스로 사용됩니다.
참고 항목
C# 언어 확장은 SQL Server 2019(15.x) CU 3 이상 버전과 호환됩니다. 현재 Windows용 SQL Server에서만 .NET Core를 통합합니다. Linux는 지원되지 않습니다.
수행 가능한 작업
C# 언어 확장은 외부 C# 코드를 실행하는 데 확장성 프레임워크를 사용합니다. 코드 실행은 핵심 엔진 프로세스에서 격리되지만 SQL Server 쿼리 실행과 완전히 통합됩니다. 데이터 원본에서 C# 코드를 실행하여 네트워크를 통해 데이터를 가져올 필요가 없습니다.
데이터 정화, 빠른 데이터 쿼리 또는 DataFrame을 통해 발생할 수 있는 C#의 다른 처리를 수행할 수 있습니다. 저장 프로시저에 C# 코드를 포함시키면 더 나은 성능을 위해 비즈니스 논리를 데이터베이스로 푸시할 수 있습니다. 이렇게 하면 SQL Server에서 데이터를 검색하고 비즈니스 논리 처리를 위해 앱 계층으로 이동할 필요가 없으므로 불필요한 데이터 이동과 대기 시간을 방지할 수 있습니다.
시작하기
개발 도구를 구성합니다.
- C# 코드 개발에 선호하는 IDE를 사용합니다.
- SQL Server에서 C# 코드를 실행하려면 SQL Server용 C#용 Microsoft 확장성 SDK를 설치합니다.
- SQL Server에서 외부 코드를 실행하기 위해 SSMS(SQL Server Management Studio) 또는 Azure Data Studio를 사용합니다.
- 시스템 저장 프로시저 sp_execute_external_script를 사용하여 SQL Server에서 C# 코드를 실행합니다.
첫 번째 C# 코드를 작성합니다. 다음 자습서를 시작점으로 사용합니다. 자습서: C#에서 regex(정규식)를 사용하여 문자열 검색