Aracılığıyla paylaş


Kullanıcı tanımlı işlevler silme

Sen-ebilmek silmek (damla) kullanıcı tanımlı işlevler SQL Server 2012kullanarak SQL Server Management StudioveyaTransact-SQL

Bu Konuda

  • Başlamadan Önce

    Sınırlamalar ve Kısıtlamalar

    Güvenlik

  • Kullanıcı tanımlı silmek için işlev kullanarak:

    SQL Server Management Studio

    Transact-SQL

Başlamadan Önce

Sınırlamalar ve Kısıtlamalar

  • Transact-sql işlevleri veya bu işlev başvuru ve SCHEMABINDING kullanılarak oluşturulmuş görünümler veritabanı varsa veya hesaplanmış sütun, check kısıtlamaları veya işlev başvuru varsayılan kısıtlamalar varsa işlev silmek mümkün olmayacaktır.

  • İşlev, bu işlev başvuru ve dizine hesaplanmış sütunları silmek mümkün olmayacaktır.

Güvenlik

İzinler

Hangi işlev ait veya işlevi izni denetlemek şema alter izni gerektirir.

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

SQL Server Management Studio Kullanarak

Kullanıcı tanımlı bir işlev silmek için

  1. Değiştirmek istediğiniz işlevi içeren veritabanı yanındaki artı işaretini tıklatın.

  2. Yanındaki artı işaretini tıklayın programlama ağıl.

  3. Değiştirmek istediğiniz işlevi içeren klasörün yanındaki artı işaretini tıklatın:

    • Tablo değerli işlev

    • Skalar değerli işlev

    • Toplama işlevi

  4. Seçin ve silmek istediğiniz işlevi sağ silmek.

  5. İçinde Delete Object iletişim kutusunda, tıklatın Tamam.

    Önemli notÖnemli

    Tıklayın Bağımlılıkları göster içinde Delete Object iletişim kutusunu açmak için function_name bağımlılıkları iletişim kutusu. Bu fonksiyonu kullanan tüm nesneleri ve tüm işlev bağımlı olduğu nesneleri gösterir.

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

Transact-SQL'i Kullanma

Kullanıcı tanımlı bir işlev silmek 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.

    -- creates function called “Sales.ufn_SalesByStore”
    USE AdventureWorks2012;
    GO
    CREATE FUNCTION Sales.ufn_SalesByStore (@storeid int)
    RETURNS TABLE
    AS
    RETURN 
    (
        SELECT P.ProductID, P.Name, SUM(SD.LineTotal) AS 'Total'
        FROM Production.Product AS P 
        JOIN Sales.SalesOrderDetail AS SD ON SD.ProductID = P.ProductID
        JOIN Sales.SalesOrderHeader AS SH ON SH.SalesOrderID = SD.SalesOrderID
        JOIN Sales.Customer AS C ON SH.CustomerID = C.CustomerID
        WHERE C.StoreID = @storeid
        GROUP BY P.ProductID, P.Name
    );
    GO
    
    USE AdventureWorks2012;
    GO
    -- determines if function exists in database
    IF OBJECT_ID (N'Sales.fn_SalesByStore', N'IF') IS NOT NULL
    -- deletes function
        DROP FUNCTION Sales.fn_SalesByStore;
    GO
    

Daha fazla bilgi için, bkz. FUNCTION (Transact-sql) bırak.

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