Использование таблицы TEMP для хранения Global Vars неэффективно? - PullRequest
0 голосов
/ 23 марта 2011

Я знаю, что в T-SQL сейчас нет глобальных переменных.

Я знаю альтернативу, которую я только что узнал, вы можете хранить их во временной таблице и просто обновлять их по мере необходимости, а затем использовать значения временной таблицы

Является ли это неэффективным для большого количества данных?Я имею в виду, рассмотрим это:

    create table #vars (var1 int, var2 bigint, var3 int)

    GO

    insert #vars(0,0,0) -- default to 0

    GO

    Update #vars set var1 = 1
    update #vars set var2 = 4
    update #vars set var3 = 6

    Then use var1, var2, and var 3 in a SQL statement here

    GO

    repeat this process...update and use

GO

...REPEAT

, поэтому я имею в виду каждый раз, когда я отправляю несколько вызовов обновлений в SQL Server только для их установки?Просто кажется мне неэффективным с точки зрения плана выполнения возможно?Я думаю, я мог бы бегать и видеть, но просто любопытно, если это вообще плохая практика?

От чего я пытался избавиться, так это от того, что большинству людей нравилось дублировать эти переменные в каждом SQL-выражении GO, которое я хочупакетировать

1 Ответ

0 голосов
/ 23 марта 2011

ну хотя бы

Update #vars set var1 = 1
update #vars set var2 = 4
update #vars set var3 = 6

можно изменить на

Update #vars set var1=1,var2=4,var3=6
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...