¿Qué es una extensión de lenguaje C#?

Se aplica a: SQL Server 2019 (15.x) y versiones posteriores.

La extensión de lenguaje C# de .NET de código abierto es una característica de Extensiones de lenguaje de SQL Server que puede utilizarse para ejecutar código C# dentro de SQL Server. Puede pasar una tabla de SQL Server existente a una aplicación de C# como DataFrame, realizar operaciones en C# mediante bibliotecas enriquecidas y obtener un conjunto de resultados. Esta extensión de lenguaje C# permite reutilizar código C#, cálculos, lógica o bibliotecas extensas existentes que proporcionan funcionalidad que no se puede obtener en T-SQL.

El lenguaje C# externo se define con CREATE EXTERNAL LANGUAGE. El procedimiento almacenado del sistema sp_execute_external_script se usa como interfaz para ejecutar el código C#.

Nota:

La extensión de lenguaje C# es compatible con SQL Server 2019 (15.x) CU 3 y versiones posteriores. Actualmente, integra .NET Core solo en SQL Server para Windows.

Qué puede hacer

La extensión de lenguaje C# usa el marco de extensibilidad para ejecutar código C# externo. La ejecución del código está aislada de los procesos principales del motor, pero está totalmente integrada con la ejecución de consultas de SQL Server. Puede ejecutar código C# en el origen de los datos, lo que elimina la necesidad de extraer datos a través de la red.

Puede hacer limpieza de datos, una consulta rápida de datos o cualquier otro procesamiento en C# que pueda realizarse a través de un DataFrame. Al insertar código C# en procedimientos almacenados, puede insertar lógica de negocios en la base de datos para mejorar el rendimiento. Esto ayuda a evitar el movimiento y la latencia de datos innecesarios, ya que no es preciso recuperar los datos de SQL Server y trasladarlos al nivel de aplicación para realizar el procesamiento de lógica de negocios.

Introducción

La extensión de lenguaje C# no se instala con SQL Server. Para instalar y configurar la extensión de C#, vea Extensión de lenguaje CSharp de .NET Core. En el tutorial de ejemplo de expresión regular se muestra cómo crear un programa de C# que usa una expresión regular para comprobar el texto de una tabla SQL.