Share via


Kullanıcı tanımlı işlevler görüntüleme

Çeşitli sistem saklı yordamları ve katalog görünümleri, saklı yordamlar hakkında bilgi sağlar.Bunlar kullanarak şunları yapabilirsiniz:

  • işlev tanımına bakın.Yani, Transact-SQL kullanılan deyimleri oluşturmak bir kullanıcı tanımlı işlev.Bu varsa, yararlı olabilir Transact-SQL komut dosyaları kullanılan oluşturma işlev.

  • Oluşturulduğunda, şema gibi bir işlev ve parametrelerinin hakkında bilgi edinin.

  • Belirtilen işlev tarafından kullanılan nesneleri ve belirtilen işlevini kullanan nesneleri listeler.Bu bilgiler, değiştirilmesi veya kaldırılması, veritabanında bir nesne tarafından etkilenen işlevler tanımlamak için kullanılabilir.

Kullanıcı tanımlı tanımını görüntülemek içinişlev

Kullanıcı tanımlı bir işlev hakkında bilgi görüntülemek için

Kullanıcı tanımlı bir işlev bağımlılıkları görüntülemek için

Örnekler

A.Kullanıcı tanımlı döndürmek için Sistem kataloğu görünümleri kullanma işlev bilgileri

Katalog Görünümleri aşağıdaki örnekleri kullanın sys.objects ve sys.parameters üzere kullanıcı tanımlı işlevler hakkında bilgiler ve bunların parametreleri.

-- Display metadata about the user-defined functions in AdventureWorks2008R2.
USE AdventureWorks2008R2;
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.OBJECT_DEFINITION kullanma

Aşağıdaki örnek, kullanıcı tanımlı işlevin tanımını döndürmek için sistem işlev OBJECT_DEFINITION kullanan dbo.ufnGetContactInformation.

USE AdventureWorks2008R2;
GO
SELECT OBJECT_DEFINITION(OBJECT_ID('dbo.ufnGetContactInformation'));
GO

C.Sys.sql_expression_dependencies kullanma

Aşağıdaki örnek sys.sql_expression_dependencies ve sys.columns katalog görünüm tablo ve sütun adlarını üzerinde dönmek için kullanıcı tanımlı işlev dbo.ufnGetContactInformation bağlıdır.

USE AdventureWorks2008R2;
GO
SELECT OBJECT_NAME(d.referencing_id) AS referencing_entity, 
    OBJECT_NAME(referenced_id) AS referenced_entity, 
    referenced_minor_id AS referenced_column_id,
    c.name AS referenced_column 
FROM sys.sql_expression_dependencies AS d
JOIN sys.columns AS c ON c.object_id = d.referenced_id
    AND c.column_id = d.referenced_minor_id
WHERE d.referencing_id = OBJECT_ID(N'AdventureWorks2008R2.dbo.ufnGetContactInformation');