Во-первых, я видел это сообщение SO on the Topic, но я никогда не знал, когда вам действительно нужно и не нужно BEGIN END
.SQL Server BEGIN
Возьмем такой пример
If (@pInsLName <> 'null')
Select @pInsLNameact = Cast (@pInsLName As VarChar(60))
Else
Select @pInsLNameact = Null
Или
If (@pInsLName <> 'null')
Begin
Select @pInsLNameact = Cast (@pInsLName As VarChar(60))
End
Else
Begin
Select @pInsLNameact = Null
End
В приведенном выше примере, есть ли преимущество использования по сравнению с не использованием НАЧАТЬ и утверждения END?
'BEGIN' и' END' wrap * blocks * кода. Верхний фрагмент в вашем сообщении является приемлемым, потому что утверждения в ваших 'IF' и' ELSE' содержат только одну строку, однако, как только у вас есть два или более, вам понадобится 'BEGIN ... END'. – Santi
Я добавил его в качестве ответа и удалю свой комментарий здесь. – gmiley