面向对象第八天---预处理与mysql事务
4. PDOStatment 對象
4.1 PDOStatmen中的成員方法
fetch
fetchALl
4.2 設置返回結果的數組類型
PDO::FETCH_ASSOC
PDO::FETCH_NUM
PDO::FETCH_BOTH
PDO::FETCH_OBJ stdClass填充屬性
4.3 pdo處理結果集方式
1、fetch 遍歷
2、fetchAll 全部獲取
3、直接遍歷$stmt對象
5. pdo預處理的使用(重點)
5.1 預處理的優點
防止SQL注入
批處理能夠提高SQL處理效率
5.2 預處理的步驟
1、準備SQL 用占位符 代替條件參數 (? / :name )
2、執行預處理 prepare 返回PDOstatement對象
4、執行綁定參數
4、執行SQL
execute()
5.3 預處理sql方式
prepare
execute
5.4 綁定參數的方式
1、bindValue 綁定值可以為變量
占位符? :name :n
2、bindParam 綁定值必須為變量 *****
占位符? :name :n
3、在execute時直接傳入數組
5.5 對查詢結果進行綁定
bindColumn
遍歷數據時 可以直接使用綁定的變量
6. pdo事務機制
ACID屬性
6.1 MySQL事務
注意:
① 原子性 所有操作 要么全執行 要么全取消
② 事務開啟后,所有操作并不是馬上執行寫入 直到commit 或 rollback 結束
6.2 MYSQL客戶端中操作過程
開啟事務:
set autocommit = 0; begin; start transaction;
寫操作,并創建還原點
savepoint pn
結束操作
rollback; rollback to pn; commit;
當回滾至某個還原點時,其后面的還原點將被刪除
6.3 PDO 中使用事務
1、開啟事務
$pdo->beginTransactio()
2、執行預處理
3、如果成功
commit
4、如果失敗
在catch中執行rollback
轉載于:https://www.cnblogs.com/GBWSHUSHU/p/5517038.html
總結
以上是生活随笔為你收集整理的面向对象第八天---预处理与mysql事务的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 浅谈zoom
- 下一篇: mysql master or mast