Compartir vía


Compilación de objetos de base de datos con integración de Common Language Runtime (CLR)

Se aplica a:SQL Server

Puede compilar objetos de base de datos mediante la integración de SQL Server con Common Language Runtime (CLR) de .NET Framework. El código administrado que se ejecuta dentro de SQL Server se denomina rutina CLR . Estas rutinas incluyen:

  • Funciones definidas por el usuario con valores escalares (UDF escalares)
  • Funciones definidas por el usuario con valores de tabla (TVF)
  • Procedimientos definidos por el usuario (UDP)
  • Desencadenadores definidos por el usuario

Las rutinas CLR tienen la misma estructura en código administrado. Se asignan a métodos públicos estáticos (compartidos en .NET de Visual Basic) de una clase. Además de las rutinas, los tipos definidos por el usuario (UDT) y las funciones de agregado definidas por el usuario también se pueden definir mediante .NET Framework. Los UDT y los agregados definidos por el usuario están asignados a las clases de .NET Framework completas.

Cada tipo de rutina de .NET Framework tiene una declaración de Transact-SQL y se puede usar en cualquier lugar de SQL Server que se pueda usar el equivalente de Transact-SQL. Por ejemplo, los UDF escalares se pueden usar en cualquier expresión escalar. Un TVF se puede usar en cualquier cláusula FROM. Un procedimiento se puede invocar en una instrucción EXEC o invocarse desde una aplicación cliente.

La ejecución de un objeto CLR (función definida por el usuario, tipo definido por el usuario o desencadenador) en Common Language Runtime puede tener lugar en varios subprocesos (plan paralelo), si el optimizador de consultas decide que es beneficioso. Sin embargo, si una función definida por el usuario accede a los datos, la ejecución se ejecuta en un plan serie.

En la tabla siguiente se enumeran los artículos descritos en esta sección.

Artículo Descripción
Introducción a la integración de CLR Proporciona una breve introducción a las bibliotecas y los espacios de nombres necesarios para compilar objetos mediante la integración clR con SQL Server. Incluye un procedimiento almacenado CLR "Hello World" de ejemplo.
bibliotecas de .NET Framework compatibles Proporciona información sobre las bibliotecas de .NET Framework admitidas por la integración CLR.
restricciones del modelo de programación de integración clR Proporciona información sobre las restricciones del modelo de programación de integración CLR.
tipos de datos de SQL Server en el de .NET Framework Información general sobre los tipos de datos de SQL Server y sus equivalentes de .NET Framework.
integración clR: atributos personalizados para rutinas CLR Proporciona información sobre los atributos personalizados de integración CLR.
funciones definidas por el usuario clR Describe cómo implementar y usar los distintos tipos de funciones CLR: funciones de agregado definidas por el usuario, escalares y con valores de tabla.
tipos definidos por el usuario clR Describe cómo implementar y usar los tipos definidos por el usuario CLR.
procedimientos almacenados clR Describe cómo implementar y usar los procedimientos almacenados CLR.
desencadenadores CLR Describe cómo implementar y usar los desencadenadores CLR.