Ver funciones definidas por el usuario
Actualizado: 5 de diciembre de 2005
Hay varios procedimientos almacenados del sistema y vistas de catálogo que brindan información acerca de los procedimientos almacenados. Con ellos, puede:
- Ver la definición de la función. Es decir, las instrucciones de Transact-SQL que se utilizan para crear una función definida por el usuario. Esto puede resultarle útil si no tiene los archivos de secuencias de comandos de Transact-SQL que se utilizan para crear la función.
- Obtener información acerca de una función como, por ejemplo, el esquema, la fecha de creación y sus parámetros.
- Enumerar los objetos utilizados por la función especificada, así como los objetos que utilizan la función especificada. Esta información puede utilizarse para identificar las funciones que se ven afectadas cuando se cambia o se quita un objeto de la base de datos.
Para ver la definición de una función definida por el usuario
Para ver información acerca de una función definida por el usuario
Para ver las dependencias de una función definida por el usuario
Ejemplos
A. Usar vistas de catálogo del sistema para devolver información acerca de una función definida por el usuario
En los siguientes ejemplos se utilizan las vistas de catálogo sys.objects
y sys.parameters
para devolver información sobre las funciones definidas por el usuario y sus parámetros.
-- Display metadata about the user-defined functions in AdventureWorks.
USE AdventureWorks;
GO
SELECT *
FROM sys.objects
WHERE type IN ('IF','TF','FN','FS','FT');
GO
-- Return parameters associated with the functions
SELECT o.name AS FunctionName, p.*
FROM sys.objects AS o
JOIN sys.parameters AS p ON o.object_id = p.object_ID
WHERE type IN ('IF','TF','FN','FS','FT');
GO
B. Usar OBJECT_DEFINITION
En el siguiente ejemplo se utiliza la función del sistema OBJECT_DEFINITION para devolver la definición de la función definida por el usuario dbo.ufnGetContactInformation
.
USE AdventureWorks;
GO
SELECT OBJECT_DEFINITION(OBJECT_ID('dbo.ufnGetContactInformation'));
GO
C. Usar sys.sql_dependencies
En el siguiente ejemplo se utilizan las vistas de catálogo sys.sql
_dependencies
y sys.columns
para devolver los nombres de tabla y columna de los que depende la función dbo.ufnGetContactInformation
definida por el usuario.
USE AdventureWorks;
GO
SELECT d.class, OBJECT_NAME(d.object_id) AS ObjectName,
OBJECT_NAME(referenced_major_id) AS ReferencedObjectName,
referenced_minor_id AS ReferencedColumnID,
c.name AS ReferencedColumnName,
is_selected, is_updated, is_select_all
FROM sys.sql_dependencies AS d
JOIN sys.columns AS c ON c.object_id = d.referenced_major_id
AND c.column_id = d.referenced_minor_id
WHERE d.object_id = OBJECT_ID(N'AdventureWorks.dbo.ufnGetContactInformation');
GO
Vea también
Otros recursos
Implementar funciones definidas por el usuario
Ayuda e información
Obtener ayuda sobre SQL Server 2005
Historial de cambios
Versión | Historial |
---|---|
5 de diciembre de 2005 |
|