支援的版本:目前 (17) / 16 / 15 / 14 / 13
開發版本:devel
不支援的版本:12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0

SPI_execute_plan

SPI_execute_plan — 執行由 SPI_prepare 準備的語句

概要

int SPI_execute_plan(SPIPlanPtr plan, Datum * values, const char * nulls,
                     bool read_only, long count)

描述

SPI_execute_plan 執行由 SPI_prepare 或其同類函數之一準備的語句。read_onlycount 具有與 SPI_execute 中相同的解釋。

引數

SPIPlanPtr plan

預先準備好的語句(由 SPI_prepare 傳回)

Datum * values

實際參數值的陣列。必須與語句的引數數量相同。

const char * nulls

描述哪些參數為空值的陣列。必須與語句的引數數量相同。

如果 nullsNULL,則 SPI_execute_plan 假設沒有參數為空值。 否則,nulls 陣列的每個條目應為 ' ',如果對應的參數值不為空值,或 'n',如果對應的參數值為空值。(在後一種情況下,對應的 values 條目中的實際值並不重要。)請注意,nulls 不是文字字串,只是一個陣列:它不需要 '\0' 終止符。

bool read_only

true 用於唯讀執行

long count

要傳回的最大列數,或 0 表示沒有限制

傳回值

傳回值與 SPI_execute 相同,但有以下額外可能的錯誤(負數)結果

SPI_ERROR_ARGUMENT

如果 planNULL 或無效,或 count 小於 0

SPI_ERROR_PARAM

如果 valuesNULLplan 已使用某些參數準備

如果成功,SPI_processedSPI_tuptable 的設定方式與 SPI_execute 中相同。

提交更正

如果您在文件中看到任何不正確、與您使用特定功能的經驗不符或需要進一步說明的地方,請使用此表單回報文件問題。