Рубрики

Что такое временная таблица в SQL?

Временные таблицы наиболее вероятны как постоянные таблицы. Временные таблицы создаются в TempDB и автоматически удаляются, как только разрывается последнее соединение. Временные таблицы помогают нам хранить и обрабатывать промежуточные результаты. Временные таблицы очень полезны, когда нам нужно хранить временные данные. Синтаксис для создания временной таблицы приведен ниже:

Чтобы создать временную таблицу:

CREATE TABLE #EmpDetails (id INT, name VARCHAR(25))  

Чтобы вставить значения во временную таблицу:

INSERT INTO #EmpDetails VALUES (01, 'Lalit'), (02, 'Atharva') 

Чтобы выбрать значения из временной таблицы:

SELECT * FROM #EmpDetails 

Результат:

idname
1Lalit
2Atharva

Существует 2 типа временных таблиц: локальная временная таблица и глобальная временная таблица. Это объясняется следующим образом.

  1. Локальная временная таблица:
    Локальная временная таблица доступна только для сеанса, который ее создал. Он автоматически удаляется (удаляется), когда соединение, которое его создало, закрывается. Для создания локальной временной таблицы в качестве префикса имени таблицы используется одиночная «#».

    Кроме того, пользователь может удалить эту временную таблицу с помощью запроса «DROP TABLE #EmpDetails». Случайные числа будут добавлены к имени таблицы. Если временная таблица создается внутри хранимой процедуры, она автоматически удаляется после завершения выполнения хранимой процедуры.

    Пример:

    CREATE PROCEDURE ProcTemp 
    AS
    BEGIN
    CREATE TABLE #EmpDetails
    INSERT INTO #EmpDetails VALUES ( 01, 'Lalit'), ( 02, 'Atharva')
    SELECT * FROM #EmpDetails
    END
    EXECUTE ProcTemp 
  2. Глобальная временная таблица:
    Чтобы создать глобальную временную таблицу, добавьте символ «##» перед именем таблицы.

    Пример:

    CREATE TABLE ##EmpDetails (id INT, name VARCHAR(25)) 

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

Рекомендуемые посты:

Что такое временная таблица в SQL?

0.00 (0%) 0 votes