簡體   English   中英

准備好的語句mysqli

[英]Prepared statement mysqli

我越來越着迷了。 我是第一次使用准備好的語句,並且可以肯定的是,我已經讀過一些地方可以准備這樣的語句:

$stmt = $db->prepare("INSERT INTO {$table} (:var1, :var2) VALUES (:val1, :val2)");
$stmt->bind_param(':var1', $var1);
$stmt->bind_param(':var2', $var2);
$stmt->bind_param(':val1', $val1);
$stmt->bind_param(':val2', $val2);
$stmt->execute();

或類似的東西。 我記得我讀過您可以使用以':'為前綴的特定名稱來調用var。 但是我真的找不到一個例子。 我閱讀了php手冊,但找不到此示例的任何示例。 是對的還是我夢到了?

常問問題

如果您想知道為什么我不能簡單地使用'?' 方法:

$stmt = $db->prepare("INSERT INTO {$table} (?, ?, ?, ?, ?, ?) VALUES (?, ?, ?, ?, ?, ?)");

這很難寫。

您不能在一列名稱列表和VALUES列表中同時執行:var1:var2:varX 其次,PDO接受命名參數綁定。

請參閱PDO :: prepare中的 PHP數據對象和示例。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM