SORU
24 Mart 2011, PERŞEMBE


Nasıl bir işlev bir SQL veritabanı üzerinde olup olmadığını kontrol etmek için

Onu bırakın ve yeniden yaratabilirim, böylece eğer bir fonksiyon bir veritabanı varsa öğrenmek istiyorum. Temelde saklanan prosedürleri için kullandığım aşağıdaki kodu gibi bir şey olmalıdır:

IF EXISTS (
     SELECT  *
     FROM    dbo.sysobjects
     WHERE   id = OBJECT_ID(N'[dbo].[SP_TEST]')
             AND OBJECTPROPERTY(id, N'IsProcedure') = 1 )

CEVAP
24 Mart 2011, PERŞEMBE


Bu SSMS betik DROP and CREATE seçeneği kullanırken kullanır

IF EXISTS (SELECT *
           FROM   sys.objects
           WHERE  object_id = OBJECT_ID(N'[dbo].[foo]')
                  AND type IN ( N'FN', N'IF', N'TF', N'FS', N'FT' ))
  DROP FUNCTION [dbo].[foo]

GO 

Dağıtma değişiklikler için bu yaklaşım, bunun yerine varsa ALTER-ıng düşünebilirsiniz yani nesne üzerindeki tüm izinleri yeniden oluşturmanız gerekir anlamına gelir.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Flash CS6 Video Tutorials for Beginners (Actionscript 3 Gaming)

    Flash CS6 Vi

    14 EYLÜL 2012
  • READ DESCRIPTION NOW!!!!!!!

    READ DESCRIP

    18 ŞUBAT 2009
  • VJ VIMANA

    VJ VIMANA

    3 Mayıs 2007