PHP8 db2_prepare

2024-04-07 10:24 更新

(PECL ibm_db2 >= 1.0.0)

db2_prepare — 準(zhǔn)備要執(zhí)行的 SQL 語(yǔ)句

說明

db2_prepare(resource $connection, string $statement, array $options = []): resource|false

db2_prepare() 創(chuàng)建一個(gè)準(zhǔn)備好的 SQL 語(yǔ)句,該語(yǔ)句可以 包括 0 個(gè)或多個(gè)參數(shù)標(biāo)記(字符) 表示輸入、輸出或輸入/輸出的參數(shù)。你可以通過 使用 db2_bind_param() 或僅用于輸入值的參數(shù)作為數(shù)組添加到準(zhǔn)備好的語(yǔ)句中 傳遞給 db2_execute()。?

在 應(yīng)用:

  • 性能:當(dāng)您準(zhǔn)備語(yǔ)句時(shí), 數(shù)據(jù)庫(kù)服務(wù)器創(chuàng)建優(yōu)化的訪問計(jì)劃,用于檢索數(shù)據(jù) 那句話。隨后使用 db2_execute() 發(fā)出準(zhǔn)備好的語(yǔ)句,使語(yǔ)句能夠重用 訪問計(jì)劃,避免動(dòng)態(tài)創(chuàng)建新訪問的開銷 計(jì)劃您發(fā)出的每份聲明。
  • 安全性:當(dāng)您準(zhǔn)備報(bào)表時(shí),您可以 包括輸入值的參數(shù)標(biāo)記。當(dāng)您執(zhí)行準(zhǔn)備好的 帶有占位符輸入值的語(yǔ)句,數(shù)據(jù)庫(kù)服務(wù)器將檢查 每個(gè)輸入值,以確保類型與列定義匹配,或者 參數(shù)定義。
  • 高級(jí)功能:不僅參數(shù)標(biāo)記 使您能夠?qū)⑤斎胫祩鬟f給準(zhǔn)備好的 SQL 語(yǔ)句,它們還 使您能夠從存儲(chǔ)過程中檢索 OUT 和 INOUT 參數(shù) 使用 db2_bind_param()。

參數(shù) 

connection

從 db2_connect() 或 db2_pconnect() 返回的有效數(shù)據(jù)庫(kù)連接資源變量。

statement

一個(gè) SQL 語(yǔ)句,可以選擇包含一個(gè)或多個(gè)參數(shù)標(biāo)記。

options

包含語(yǔ)句選項(xiàng)的關(guān)聯(lián)數(shù)組。你可以用這個(gè) 參數(shù),用于在數(shù)據(jù)庫(kù)服務(wù)器上請(qǐng)求可滾動(dòng)游標(biāo) 支持此功能。

有關(guān)有效語(yǔ)句選項(xiàng)的說明,請(qǐng)參見 db2_set_option()。

返回值 

如果 SQL 語(yǔ)句已成功解析,則返回語(yǔ)句資源,并且 由數(shù)據(jù)庫(kù)服務(wù)器準(zhǔn)備。如果數(shù)據(jù)庫(kù)服務(wù)器返回 false,則返回 返回錯(cuò)誤。您可以通過調(diào)用 db2_stmt_error() 或 db2_stmt_errormsg() 來(lái)確定返回了哪個(gè)錯(cuò)誤。

示例 

示例 #1 準(zhǔn)備和執(zhí)行帶有參數(shù)標(biāo)記的 SQL 語(yǔ)句

下面的示例準(zhǔn)備一個(gè) INSERT 語(yǔ)句,該語(yǔ)句接受四個(gè) 參數(shù)標(biāo)記,然后遍歷包含 要傳遞給 db2_execute() 的輸入值。

<?php
$animals = array(
    array(0, 'cat', 'Pook', 3.2),
    array(1, 'dog', 'Peaches', 12.3),
    array(2, 'horse', 'Smarty', 350.0),
);

$insert = 'INSERT INTO animals (id, breed, name, weight)
    VALUES (?, ?, ?, ?)';
$stmt = db2_prepare($conn, $insert);
if ($stmt) {
    foreach ($animals as $animal) {
        $result = db2_execute($stmt, $animal);
    }
}
?>

參見 

  • db2_bind_param() - 將 PHP 變量綁定到 SQL 語(yǔ)句參數(shù)
  • db2_execute() - 執(zhí)行準(zhǔn)備好的 SQL 語(yǔ)句
  • db2_stmt_error() - 返回一個(gè)字符串,其中包含 SQL 語(yǔ)句返回的 SQLSTATE
  • db2_stmt_errormsg() - 返回包含最后一個(gè) SQL 語(yǔ)句錯(cuò)誤消息的字符串


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)