Aracılığıyla paylaş


Görünüm, kullanıcı tanımlı işlevler

Tanım veya kullanıcı tanımlı bir işlev özellikleri hakkında bilgi elde edebilirsiniz SQL Server 2012kullanarak SQL Server Management Studioya Transact-SQL. Nasıl verileri kaynak tablolardan türetilmiş anlamak ya da işlev tarafından tanımlanan verileri görmek için işlevin tanımını görmek gerekebilir.

Önemli notÖnemli

Bir işlevi tarafından başvurulan nesne adını değiştirirseniz, metnin yeni adı yansıtır böylece fonksiyonu değiştirmeniz gerekir. Bu nedenle, bir nesneyi yeniden adlandırmadan önce ilk işlevler tarafından önerilen değişiklik etkilenip etkilenmediğini belirlemek için nesne bağımlılıklarını görüntüleyin.

Bu Konuda

  • Başlamadan Önce

    Güvenlik

  • Bir işlev hakkında bilgi almak için kullanma:

    SQL Server Management Studio

    Transact-SQL

Başlamadan Önce

Güvenlik

İzinler

Kullanarak c.sys.sql_expression_dependencies tüm bulmak için bir işlev bağımlılıkları veritabanı üzerinde görünüm tanımı izni ve gerektirir select izni üzerinde c.sys.sql_expression_dependencies veritabanı için. Sistem nesne tanımları, OBJECT_DEFINITION içinde döndürülen olanlar gibi genel olarak görülebilir.

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

SQL Server Management Studio Kullanarak

Bir kullanıcı tanımlı işlevin özelliklerini göstermek için

  1. İçinde Object Explorer, özelliklerini görüntülemek istediğiniz işlevi içeren veritabanı yanındaki artı işaretini tıklatın ve sonra genişletmek için artı işaretini tıklatın programlama ağıl.

  2. Genişletmek için artı işaretini işlevleri ağıl.

  3. Özelliklerini görüntülemek istediğiniz işlevi içeren klasörü genişletmek için artı işaretini tıklatın:

    • Tablo değerli işlev

    • Skalar değerli işlev

    • Toplama işlevi

  4. Özelliklerini görüntülemek ve seçmek istediğiniz işlevi sağ Özellikler.

    Aşağıdaki özellikleri görünür **Fonksiyon özellikleri –**function_name iletişim kutusu.

    • Veritabanı
      Bu işlevi içeren veritabanı adıdır.

    • Sunucu
      Geçerli sunucu örneği adı.

    • Kullanıcı
      Bu bağlantının kullanıcı adı.

    • Oluşturma tarihi
      Işlev oluşturulduğu tarihi görüntüler.

    • Olarak yürütme
      Yürütme içeriği işlevi.

    • Ad
      Geçerli işlevin adı.

    • Şema
      İşlev sahibi şemasını görüntüler.

    • Sistem nesnesi
      İşlev bir sistem nesnesi olup olmadığını gösterir. Değerler True ve False.

    • ANSI NULL
      Nesne ANSI NULL seçeneğiyle oluşturulmuş olup olmadığını gösterir.

    • Şifreli
      İşlev şifreli olup olmadığını gösterir. Değerler True ve False.

    • İşlev türü
      Kullanıcı tanımlı işlev türü.

    • Teklif edilen tanımlayıcı
      Nesne teklif edilen tanımlayıcı seçeneğiyle oluşturulmuş olup olmadığını gösterir.

    • Şema bağlı
      İşlev şema-bağlı olup olmadığını gösterir. Değerler True ve False. Şemaya bağlı işlevleri hakkında daha fazla bilgi için bkz: SCHEMABINDING bölümünde CREATE FUNCTION (Transact-SQL).

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]

Transact-SQL'i Kullanma

Tanımı ve özellikleri bir fonksiyon olsun

  1. İçinde Object Explorer, örneğine bağlanmak Veritabanı Altyapısı.

  2. Standart çubuğunda Yeni sorgu.

  3. Kopyalama ve aşağıdaki örneklerden birini sorgu penceresine yapıştırın ve tıkırtı Execute.

    USE AdventureWorks2012;
    GO
    -- Get the function name, definition, and relevant properties
    SELECT sm.object_id, 
       OBJECT_NAME(sm.object_id) AS object_name, 
       o.type, 
       o.type_desc, 
       sm.definition,
       sm.uses_ansi_nulls,
       sm.uses_quoted_identifier,
       sm.is_schema_bound,
       sm.execute_as_principal_id
    -- using the two system tables sys.sql_modules and sys.objects
    FROM sys.sql_modules AS sm
    JOIN sys.objects AS o ON sm.object_id = o.object_id
    -- from the function 'dbo.ufnGetProductDealerPrice'
    WHERE sm.object_id = OBJECT_ID('dbo.ufnGetProductDealerPrice')
    ORDER BY o.type;
    GO
    
    USE AdventureWorks2012;
    GO
    -- Get the definition of the function dbo.ufnGetProductDealerPrice
    SELECT OBJECT_DEFINITION (OBJECT_ID('dbo.ufnGetProductDealerPrice')) AS ObjectDefinition;
    GO
    

Daha fazla bilgi için sys.sql_modules (Transact-sql)ve OBJECT_DEFINITION (Transact-sql).

Bir işlev bağımlılıkları almak için

  1. İçinde Object Explorer, örneğine bağlanmak Veritabanı Altyapısı.

  2. Standart çubuğunda Yeni sorgu.

  3. Kopyalama ve aşağıdaki örnek sorgu penceresine yapıştırın ve tıkırtı Execute.

    USE AdventureWorks2012;
    GO
    -- Get all of the dependency information
    SELECT OBJECT_NAME(sed.referencing_id) AS referencing_entity_name, 
        o.type_desc AS referencing_desciption, 
        COALESCE(COL_NAME(sed.referencing_id, sed.referencing_minor_id), '(n/a)') AS referencing_minor_id, 
        sed.referencing_class_desc, sed.referenced_class_desc,
        sed.referenced_server_name, sed.referenced_database_name, sed.referenced_schema_name,
        sed.referenced_entity_name, 
        COALESCE(COL_NAME(sed.referenced_id, sed.referenced_minor_id), '(n/a)') AS referenced_column_name,
        sed.is_caller_dependent, sed.is_ambiguous
    -- from the two system tables sys.sql_expression_dependencies and sys.object
    FROM sys.sql_expression_dependencies AS sed
    INNER JOIN sys.objects AS o ON sed.referencing_id = o.object_id
    -- on the function dbo.ufnGetProductDealerPrice
    WHERE sed.referencing_id = OBJECT_ID('dbo.ufnGetProductDealerPrice');
    GO
    

Daha fazla bilgi için c.sys.sql_expression_dependencies (Transact-sql)ve sys.Objects (Transact-sql).

Başa Dön bağlantısıyla kullanılan ok simgesi[Top]