PHP PDOStatement對(duì)象bindpram()、bindvalue()和bindcolumn之間的區(qū)別
PDOStatement::bindParam — 綁定一個(gè)參數(shù)到指定的變量名。
綁定一個(gè)PHP變量到用作預(yù)處理的SQL語(yǔ)句中的對(duì)應(yīng)命名占位符或問(wèn)號(hào)占位符。 不同于 PDOStatement::bindValue() ,此變量作為引用被綁定,并只在 PDOStatement::execute() 被調(diào)用的時(shí)候才取其值。
PDOStatement::bindValue — 把一個(gè)值綁定到一個(gè)參數(shù)。
綁定一個(gè)值到用作預(yù)處理的 SQL 語(yǔ)句中的對(duì)應(yīng)命名占位符或問(wèn)號(hào)占位符。
<?php
$stm = $pdo->prepare("select * from users where user = :user");
$user = "jack";
//正確
$stm->bindParam(":user",$user);
//錯(cuò)誤
$stm->bindParam(":user","jack");
//正確
$stm->bindValue(":user",$user);
//正確
$stm->bindValue(":user","jack");
//所以使用bindParam是第二個(gè)參數(shù)只能用變量名,而不能用變量值,而bindValue至可以使用具體值。
?>
PDOStatement::bindColumn — 綁定一列到一個(gè) PHP 變量。
安排一個(gè)特定的變量綁定到一個(gè)查詢結(jié)果集中給定的列。每次調(diào)用 PDOStatement::fetch() 或 PDOStatement::fetchAll() 都將更新所有綁定到列的變量。
<?php
function readData ( $dbh ) {
$sql = 'SELECT name, colour, calories FROM fruit' ;
try {
$stmt = $dbh -> prepare ( $sql );
$stmt -> execute ();
/* 通過(guò)列號(hào)綁定 */
$stmt -> bindColumn ( 1 , $name );
$stmt -> bindColumn ( 2 , $colour );
/* 通過(guò)列名綁定 */
$stmt -> bindColumn ( 'calories' , $cals );
while ( $row = $stmt -> fetch ( PDO :: FETCH_BOUND )) {
$data = $name . "\t" . $colour . "\t" . $cals . "\n" ;
print $data ;
}
}
catch ( PDOException $e ) {
print $e -> getMessage ();
}
}
readData ( $dbh );
?>
- JDBC使用Statement修改數(shù)據(jù)庫(kù)
- Java使用PreparedStatement接口及ResultSet結(jié)果集的方法示例
- Java使用Statement接口執(zhí)行SQL語(yǔ)句操作實(shí)例分析
- Java數(shù)據(jù)庫(kù)連接PreparedStatement的使用詳解
- 利用JDBC的PrepareStatement打印真實(shí)SQL的方法詳解
- MyBatis綁定錯(cuò)誤提示BindingException:Invalid bound statement (not found)的解決方法
- PDO預(yù)處理語(yǔ)句PDOStatement對(duì)象使用總結(jié)
- JDBC之PreparedStatement類中預(yù)編譯的綜合應(yīng)用解析
- You must SET PASSWORD before executing this statement的解決方法
- JDBC中Statement和Preparement的使用講解
相關(guān)文章
php+xml編程之SimpleXML的應(yīng)用實(shí)例
這篇文章主要介紹了php+xml編程之SimpleXML的應(yīng)用,實(shí)例分析了SimpleXML函數(shù)操作XML文件的方法,需要的朋友可以參考下2015-01-01PHP針對(duì)偽靜態(tài)的注入總結(jié)【附asp與Python相關(guān)代碼】
這篇文章主要介紹了PHP針對(duì)偽靜態(tài)的注入,結(jié)合實(shí)例形式總結(jié)分析了php針對(duì)偽靜態(tài)的常見(jiàn)注入情況,并附帶asp與Python的相關(guān)操作代碼,對(duì)于php程序安全有一定借鑒價(jià)值,需要的朋友可以參考下2017-08-08php實(shí)現(xiàn)的遞歸提成方案實(shí)例
這篇文章主要介紹了php實(shí)現(xiàn)的遞歸提成方案,以完整實(shí)例形式較為詳細(xì)的分析了php提成方案的數(shù)據(jù)庫(kù)設(shè)計(jì)及功能實(shí)現(xiàn)技巧,涉及PHP數(shù)學(xué)運(yùn)算的相關(guān)技巧,需要的朋友可以參考下2015-11-11PHP實(shí)現(xiàn)多維數(shù)組轉(zhuǎn)字符串和多維數(shù)組轉(zhuǎn)一維數(shù)組的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)多維數(shù)組轉(zhuǎn)字符串和多維數(shù)組轉(zhuǎn)一維數(shù)組的方法,以實(shí)例形式分別介紹了php數(shù)組與字符串的轉(zhuǎn)換技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-08-08