SPI_saveplan

SPI_saveplan — salva uma instrução preparada

Sinopse

SPIPlanPtr SPI_saveplan(SPIPlanPtr plan)

Descrição

A função SPI_saveplan copia a instrução passada (preparada por SPI_prepare) na memória que não será liberada por SPI_finish nem pelo gerenciador de transações, e retorna um ponteiro para a instrução copiada. Isto dá a capacidade de reutilizar instruções preparadas nas chamadas subsequentes da função C na sessão corrente.

Argumentos

SPIPlanPtr plan

a instrução preparada a ser salva

Valor retornado

Ponteiro para a instrução copiada; ou NULL se não tiver êxito. Em caso de erro, SPI_result é definido assim:

SPI_ERROR_ARGUMENT

se plan for NULL ou inválido

SPI_ERROR_UNCONNECTED

se chamada de uma função C não conectada

Notas

A instrução passada originalmente não é liberada, então pode-se desejar chamar a função SPI_freeplan para evitar vazamento de memória antes de chamar SPI_finish.

Na maioria dos casos, a função SPI_keepplan é preferível em relação a esta função, uma vez que produz basicamente o mesmo resultado sem a necessidade de copiar fisicamente as estruturas de dados da instrução preparada.