Подтвердить что ты не робот

Что означает "#" перед именем таблицы в TSQL?

В чем разница между именами таблиц "#mytable" и "mytable" в TSQL? Я вижу, что имена таблиц начинаются с "#" во множестве пользовательских процедур.

4b9b3361

Ответ 1

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

Ответ 2

#mytable - временная таблица, где mytable - это конкретная таблица.

Подробнее о Временные таблицы в SQL Server.

Они чаще всего используются для предоставления рабочей области промежуточных результатов при обработке данных в партии или процедуре. Они есть также используется для передачи таблицы из табличной функции, для прохождения табличные данные между хранимыми процедурами или, в последнее время, в формы табличных параметров, отправлять целые таблицы только для чтения из приложений к процедурам SQL Server или переходить только на чтение таблицы как параметры. Как только они закончили с их использованием, они отбрасываются автоматически.

Временные таблицы имеют разные вкусы, включая, среди прочего, локальные временные таблицы (начиная С#), глобальные временные таблицы (начиная С##), постоянных временных таблиц (с префиксом TempDB..) и табличные переменные (начиная с (@)