2013-08-24 2 views
3

Есть ли какая-либо разница, используя один оператор DECLARE для объявления всех ваших переменных в процедуре или функции хранилища вместо использования оператора для каждого из них.Использование одного оператора DECLARE для нескольких переменных

Например:

DECLARE @INST1 INT 
     ,@INST2 BIGINT 
     ,@INST3 DATETIME 
     ....... 
     ,@INSTN INT 

и

DECLARE @INST1 INT 
DECLARE @INST2 BIGINT 
DECLARE @INST3 DATETIME 
.................. 
DECLARE @INSTN INT 

Я прошу различий, как производительность, сокращая SQL сервер кэширует размер и другие внутренние вещи сервера, что я не знаком с и может облегчить работу сервера.

ответ

3

IHMO, нет никакой разницы, потому что в обоих случаях двигатель создает одну и ту же память об переменных. Это всего лишь короткий код для написания кода, но я предпочитаю использовать DECLARE для каждой переменной, потому что код становится лучше читать.

+1

Пока вы форматируете свой код аккуратно, читаемость не должна становиться проблемой. –

+0

Да, но я рад иметь отдельные строки, потому что для уменьшения смещения использования переменной мне нравится определять мою переменную в небе, которую я использую. –