您好,登錄后才能下訂單哦!
當同一個SQL多次查詢(執行)時,只是每次的查詢條件(數據)不一樣,那么,使用prepare就對了.
它可大大減少查詢(執行)時間,服務器資源消耗..
原型:
PDOStatement PDO::prepare(string query [, array driver_options])
占位符:
1,有名占位符(:named parameters)
2,問號占位符(?)
如:
INSERT INTO products SET sku = :sku, name = :name; INSERT INTO products SET sku = ?, name = ?;
綁定一個參數到指定的變量名:
bool PDOStatement::bindParam ( mixed $parameter , mixed &$variable [, int $data_type = PDO::PARAM_STR [, int $length [, mixed $driver_options ]]] ) //命名占位符 $stmt->bindParam(':sku', $sku); $stmt->bindParam(':title', $title); //問號占位符 $stmt->bindParam(1, $sku); $stmt->bindParam(2, $title);
執行步驟:
$dbh->prepare(); //準備 $dbh->bindParam(); //綁定參數 $dbh->execute(); //執行
查詢返回字段個數:
integer PDOStatement::columnCount()
從結果集中返回下一行數據:
mixed PDOStatement::fetch([int fetch_style [, int cursor_orientation [, int cursor_offset]]])
常用fetch_style:
PDO::FETCH_ASSOC:返回一個索引為結果集列名的數組
PDO::FETCH_BOTH(默認):返回一個索引為結果集列名和以0開始的列號的數組
PDO::FETCH_NUM:返回一個索引為以0開始的結果集列號的數組
PDO::FETCH_OBJ:返回一個屬性名對應結果集列名的匿名對象
PDO::FETCH_BOUND:返回 TRUE ,并分配結果集中的列值給 PDOStatement::bindColumn()方法綁定PHP 變量。
返回一個包含結果集中所有行的數組
array PDOStatement::fetchAll([int fetch_style])
從結果集中的下一行返回單獨的一列
string PDOStatement::fetchColumn([int column_number])
綁定列名:
boolean PDOStatement::bindColumn(mixed column, mixed ¶m [, int type [, int maxlen [, mixed driver_options]]])
操作事務:
開始:
boolean PDO::beginTransaction();
提交:
boolean PDO::commit();
回滾:
boolean PDO::commit()
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。