laravel呼叫資料庫時繫結引數
阿新 • • 發佈:2019-01-07
laravel在使用sql語句的時候在繫結引數的時候和其他時候有些地方會不太一樣
接下來小結一下
其他時候我們繫結引數的時候可以支援一對多,一個引數可以繫結到sql語句的多處地方
寫法一
$sql='DELETE FROM zzz_code_material WHERE material_classify_id=:material_classify_id OR father_classify_id=:material_classify_id'; $st=$this->sqlHelper->prepare($sql); $st->bindValue(':material_classify_id', $material_classify_id,PDO::PARAM_STR);
【問號賦值】寫法二
$sql='DELETE FROM zzz_code_material
WHERE material_classify_id=? OR father_classify_id=?';
$st=$this->sqlHelper->prepare($sql);
$st->bindValue(1, $material_classify_id,PDO::PARAM_STR);
$st->bindValue(2, $material_classify_id,PDO::PARAM_STR);
而我們再laravel中即使他賦值的引數是一樣的,我們也需要一個一個 來給他賦值
寫法一【如下,即使是同一個引數,我們也給他加上1、2,然後再一個一個賦值】
$sql=DB::delete('DELETE FROM zzz_code_material WHERE material_classify_id=:material_classify_id OR father_classify_id=:material_classify_id2', array('material_classify_id'=>$material_classify_id, 'material_classify_id2'=>$material_classify_id));
寫法二【使用問號賦值】如下,無需加引號,直接賦值
$sql=DB::delete('DELETE FROM zzz_code_material WHERE material_classify_id=? OR father_classify_id=?',
array($material_classify_id,$material_classify_id));