Временные таблицы в БД YugaByte

Идея временных таблиц присутствует во многих базах данных. Планируется ли поддержка временных таблиц в SQL-кластерах YugaByte DB?


person Edward Ribbery    schedule 23.04.2019    source источник


Ответы (1)


Временные таблицы поддерживаются в YSQL, начиная с версии 1.2.4 (https://docs.yugabyte.com/latest/releases/).

Вы можете создать временную таблицу, используя синтаксис CREATE TEMP TABLE table_name .... Временная таблица в YSQL видна только для создавшего ее сеанса и удаляется, когда этот сеанс завершается.

Вы можете изменить поведение временных таблиц в конце блока транзакций в YSQL, используя предложение ON COMMIT. Доступные варианты: PRESERVE ROWS (это делается по умолчанию), DELETE ROWS и DROP.
Пример:

CREATE TEMP TABLE test (number int) ON COMMIT DELETE ROWS;
BEGIN;
INSERT INTO test VALUES (1);
COMMIT; -- all rows in test are deleted on commit
SELECT * FROM test;

 number 
--------
(0 rows)
person Fizaa    schedule 23.04.2019