2013-11-15 3 views
1

В чем разница между различными типами временных таблиц в Sql Server 2008?Разница между временной таблицей в Sql Server 2008?

1.) #table
2.) ## Таблица
3.) КТР
4.) @table переменная

+2

CTE не являются формой временной таблицы. –

+0

* вздох * Когда-либо слышал о «поиске в Интернете»? http://stackoverflow.com/questions/27894/whats-the-difference-between-a-temp-table-and-table-variable-in-sql-server –

ответ

1

вот некоторые хорошая статья на TempTable VS Таблица Variable

  1. What is the difference between TEMPORARY TABLE and TABLE VARIABLE in SQL 2008?

  2. http://blog.sqlauthority.com/2009/12/15/sql-server-difference-temptable-and-table-variable-temptable-in-memory-a-myth/

  3. http://www.codeproject.com/Articles/415184/Table-Variable-V-S-Temporary-Table

как вывод, что я нашел:

Табличные переменные (DECLARE @t TABLE) открыты только для связи, что создает его, и удаляются, когда партия или сохранено процедура завершается.

Локальные временные таблицы (CREATE TABLE #t) видны только соединению, которое его создает, и удаляются при закрытии соединения .

Глобальные временные таблицы (CREATE TABLE ## t) равны , и они удаляются, когда все соединения, имеющие , ссылаются на них, закрыты.

Текущие таблицы Tempdb (USE tempdb CREATE TABLE t) видны для всех и удаляются при перезапуске сервера .

но, наконец, я также рекомендовал бы улучшить ваш поиск в Интернете.

+1

Локальные временные таблицы удаляются, когда они выходят из сферы действия - временная таблица, созданная в 'EXEC ()', не будет существовать при завершении 'EXEC'. Временная таблица, созданная внутри хранимой процедуры, удаляется при возврате хранимой процедуры. –

Смежные вопросы