O que é a Extensão de Linguagem C#?

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores

A Extensão de Linguagem C# é um recurso das Extensões de Linguagem do SQL Server que pode ser usado para executar código C# no SQL Server. Você pode passar uma tabela de SQL Server existente para um aplicativo C# como um DataFrame, executar operações em C# usando bibliotecas avançadas e obter de volta um conjunto de resultados. Essa extensão de linguagem C# permite reutilizar código C# existente, cálculos, lógica ou bibliotecas abrangentes que fornecem funcionalidades que você não pode obter em Transact-SQL (T-SQL).

A linguagem C# externa é definida com CREATE EXTERNAL LANGUAGE. O procedimento armazenado do sistema sp_execute_external_script é usado como a interface para executar o código C#.

Observação

A extensão de linguagem C# é compatível com o SQL Server 2019 (15.x) CU3 e versões posteriores. No momento, ela integra o .NET Core somente no SQL Server Windows. Não há suporte para o Linux.

O que você pode fazer

A Extensão de Linguagem C# usa a estrutura de extensibilidade para executar código C# externo. A execução de código é isolada dos principais processos de mecanismo, mas totalmente integrada à execução de consulta do SQL Server. Você pode executar o código C# na fonte dos dados, eliminando a necessidade de efetuar pull dos dados na rede.

Você pode fazer limpeza de dados, consulta rápida de dados ou qualquer outro processamento em C# que possa ocorrer por meio de um DataFrame. Ao inserir o código C# em procedimentos armazenados, você pode enviar a lógica de negócios para o banco de dados a fim de melhorar o desempenho. Isso ajuda a evitar a movimentação de dados e latência desnecessárias porque os dados não precisam ser recuperados por meio do SQL Server e movidos para a camada de aplicativo para fazer o processamento da lógica de negócios.

Introdução

  1. Instale a Extensão de Linguagem .NET do SQL Server no Windows.

  2. Configure ferramentas de desenvolvimento.

  3. Escreva seu primeiro código C#. Use este tutorial como ponto de partida. Tutorial: Pesquisar uma sequência usando expressões regulares (regex) em C#.