У меня есть хранимая процедура javascript, которая создает внутри нее временную таблицу, используя синтаксис CTAS для хранения некоторых временных результатов во время вычислений. Я хочу иметь возможность вызывать эту хранимую процедуру внутри транзакции. Разве это не разрешено?
CREATE PROCEDURE my_stored_proc()
RETURNS BOOLEAN NOT NULL
LANGUAGE javascript
EXECUTE AS CALLER
AS
$$
...
var stmt = snowflake.createStatement(
{sqlText: "CREATE TEMPORARY TABLE temp_table..."}
);
var rs = stmt.execute();
...
$$;
BEGIN;
...
CALL my_stored_proc();
...
COMMIT;
Я пытался обернуть эту сохраненную pro c транзакцией, но она фиксируется, как только сохраненная pro c завершается, я хочу иметь возможность откатить операторов, если во время выполнения сохраненным pro c возникла ошибка.