Tipos definidos por el usuario clR
Se aplica a:SQL Server
SQL Server permite crear objetos de base de datos programados en un ensamblado creado en Common Language Runtime (CLR) de .NET Framework. Los objetos de base de datos que pueden aprovechar el complejo modelo de programación que proporciona CLR incluyen desencadenadores, procedimientos almacenados, funciones, funciones de agregado y tipos.
Nota:
La capacidad de ejecutar código CLR se establece en OFF de forma predeterminada en SQL Server. CLR se puede habilitar mediante el procedimiento almacenado del sistema sp_configure
.
Puede usar tipos definidos por el usuario (UDT) para ampliar el sistema de tipos escalares del servidor, lo que permite el almacenamiento de objetos CLR en una base de datos de SQL Server. Los UDT pueden contener varios elementos y pueden tener comportamientos, diferenciandolos de los tipos de datos de alias tradicionales que constan de un único tipo de datos del sistema de SQL Server.
Dado que el sistema tiene acceso a los UDT en su conjunto, su uso para tipos de datos complejos podría afectar negativamente al rendimiento. Normalmente, los datos complejos se modelan mejor mediante filas tradicionales y tablas. Los UDT de SQL Server son adecuados para el siguiente tipo de datos:
- Fecha, tiempo, moneda y tipos numéricos extendidos
- Aplicaciones geoespaciales
- Datos codificados o cifrados
El proceso de desarrollo de UDT en SQL Server consta de los pasos siguientes:
Codigo y compile el ensamblado que define el UDT. Los UDT se definen mediante cualquiera de los lenguajes admitidos por Common Language Runtime (CLR) de .NET Framework que generan código verificable. Esto incluye C# y Visual Basic .NET. Los datos se exponen como los campos y propiedades de una clase o estructura de .NET Framework, y los métodos de la clase o estructura definen los comportamientos.
Registre el ensamblado . Los UDT se pueden implementar a través de la interfaz de usuario de Visual Studio en un proyecto de base de datos o mediante la instrucción Transact-SQL
CREATE ASSEMBLY
, que copia el ensamblado que contiene la clase o estructura en una base de datos.Cree el UDT en SQL Server. Una vez cargado un ensamblado en una base de datos host, se usa la instrucción CREATE TYPE de Transact-SQL para crear un UDT y exponer los miembros de la clase o estructura como miembros del UDT. Los UDT únicamente existen en el contexto de una base de datos única y, una vez registrados, no dependen de ninguno de los archivos externos a partir de los que se crearon.
Cree tablas, variables o parámetros mediante el UDT. Un tipo definido por el usuario se puede usar como definición de columna de una tabla, como una variable en un lote de Transact-SQL o como argumento de una función o procedimiento almacenado de Transact-SQL.
En esta sección
Artículo | Descripción |
---|---|
Crear tipos definidos por el usuario | Describe cómo crear los UDT. |
Registrar tipos definidos por el usuario en SQL Server | Describe cómo registrar y administrar udT en SQL Server. |
Trabajar con tipos definidos por el usuario en SQL Server | Describe cómo crear consultas mediante los UDT. |
Acceso a tipos definidos por el usuario en ADO.NET | Describe cómo trabajar con udT mediante el proveedor de datos de .NET Framework para SQL Server en ADO.NET. |