Visualizzazione delle funzioni definite dall'utente
Data aggiornamento: 5 dicembre 2005
Numerose stored procedure e viste del catalogo di sistema forniscono informazioni relative alle stored procedure. Mediante tali stored procedure e viste è possibile:
- Visualizzare la definizione della funzione, ovvero le istruzioni Transact-SQL di cui è costituita. Può risultare utile se non sono disponibili i file script Transact-SQL utilizzati per la creazione della funzione.
- Recuperare informazioni su una funzione quali lo schema, la data di creazione e i parametri.
- Visualizzare un elenco degli oggetti utilizzati dalla funzione specificata e degli oggetti che utilizzano la funzione. È possibile utilizzare queste informazioni per identificare le funzioni interessate dalla modifica o rimozione di un oggetto nel database.
Per visualizzare la definizione di una funzione definita dall'utente
Per visualizzare informazioni relative a una funzione definita dall'utente
Per visualizzare le dipendenze di una funzione definita dall'utente
Esempi
A. Utilizzo delle viste del catalogo di sistema per recuperare informazioni relative a una funzione definita dall'utente
Negli esempi seguenti vengono utilizzate le viste del catalogo sys.objects
e sys.parameters
per recuperare informazioni sulle funzioni definite dall'utente e i relativi parametri.
-- 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. Utilizzo di OBJECT_DEFINITION
Nell'esempio seguente la funzione di sistema OBJECT_DEFINITION viene utilizzata per recuperare la definizione della funzione definita dall'utente dbo.ufnGetContactInformation
.
USE AdventureWorks;
GO
SELECT OBJECT_DEFINITION(OBJECT_ID('dbo.ufnGetContactInformation'));
GO
C. Utilizzo di sys.sql_dependencies
Nell'esempio seguente vengono utilizzate le viste del catalogo sys.sql
_dependencies
e sys.columns
per recuperare i nomi di tabella e di colonna da cui dipende la funzione dbo.ufnGetContactInformation
.
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
Vedere anche
Altre risorse
Implementazione di funzioni definite dall'utente
Guida in linea e informazioni
Cronologia modifiche
Versione | Cronologia |
---|---|
5 dicembre 2005 |
|