SORU
15 Ocak 2010, Cuma


Nasıl bir saklı yordam oluşturmadan önce olup olmadığını kontrol etmek için

Bir SQL istemcisi çalıştırır her zaman çalıştırılacak olan script "veritabanı yönetimi" işlevi var. Komut istemci veritabanında saklanan prosedürleri oluşturma içerir. Bu müşterilerden bazıları zaten senaryo üzerine çalışan saklı yordam olabilir ve bazı olmayabilir. Kayıp saklı yordamları müşteri veritabanına eklenen ihtiyacım var, ama T-SQL söz dizimi bükmeye çalışıyorum önemli değil, anlıyorum

/DEĞİŞTİRME PROSEDÜRÜ', sorgu toplu iş içinde ilk deyim olmalıdır . OLUŞTURUN

Eserler daha önce bırakarak okudum, ama bu şekilde yapmak istemiyorum.

IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'MyProc')
DROP PROCEDURE MyProc
GO

CREATE PROCEDURE MyProc
...

Nasıl eğer eğer varsa ama mevcut alter değil mi saklı yordam varlığı için kontrol eklemek ve bunu oluşturabilir miyim?

CEVAP
21 Mayıs 2010, Cuma


Bu zaten cevap olarak işaretlendi farkındayım, ama böyle yapardık:

IF NOT EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'MyProc')
   exec('CREATE PROCEDURE [dbo].[MyProc] AS BEGIN SET NOCOUNT ON; END')
GO

ALTER PROCEDURE [dbo].[MyProc] 
AS
  ....

Prosedür bırakarak önlemek için.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • George McCarron

    George McCar

    29 Mayıs 2013
  • lane182videos

    lane182video

    6 EKİM 2011
  • Virtual Riot

    Virtual Riot

    19 Mayıs 2011