2012-06-29 14 views
11

Co to jest dobre no-op w T-SQL? Chcę używać go jako elementu zastępczego w kodowych fragmentach kodu. Na przykład, jeśli mam gasząc kwerendy/UDF i mieć coś takiego:Czego mogę użyć do operacji "no-op" w T-SQL?

IF @parm = 1 
    BEGIN 
    END 
IF @parm = 2 
    BEGIN 
    END 

... Wezmę komunikat Incorrect sytntax near the word 'END'. Co mógłbym wstawić między tymi, które uciszyłyby kompilator (tj. Byłyby wykonywalne)?

+1

HOw o druku print print @parm – HLGEM

+1

@Jon Egerton: Rzeczywiście, ale cieszę się, że przegapiłem to, ponieważ sugestia @ Abe/@ HLGEM nie została tam uwzględniona. (Przypuszczam, że ktoś powinien połączyć te dwa pytania, ale ja nie jestem tą metą.) – kmote

Odpowiedz

7

Można rzucić print tam:

IF @parm = 1 
    BEGIN 
    print 'need to implement 1' 
    END 
IF @parm = 2 
    BEGIN 
    print 'need to implement 2' 
    END 
20

Jak wspomniano here można zadeklarować zmienną manekina. To nie powinien pojawić się w dowolnym miejscu na wszystkich (planów realizacyjnych, wydruki itp):

IF @parm = 1 
    BEGIN 
     DECLARE @dummy1 bit 
    END 
IF @parm = 2 
    BEGIN 
     DECLARE @dummy2 bit 
    END 

Alternatywnie, można użyć etykiety TOO:

IF @parm = 1 
    BEGIN 
     noop1: 
    END 
IF @parm = 2 
    BEGIN 
     noop2: 
    END 
+0

Zgłoszenie etykiety zadziałało idealnie dla mnie. – Contango

2

Można również spróbować ...

WAITFOR DELAY '0:0';