簡介:《mysqli 擴展庫視頻教程》從面向對象和面向過程兩個方面,講解了mysqli的具體使用和注意事項,最后通過無刷新評論系統的實戰演練,詳細剖析實際開發中如何使用mysqli完成對數據庫的操作。
課程播放地址:http://www.php.cn/course/396.html
該老師講課風格:
教師講課深入淺出,條理清楚,層層剖析,環環相扣,論證嚴密,結構嚴謹,用思維的邏輯力量吸引學生的注意力,用理智控制課堂教學進程。學生通過聽教師的講授,不僅學到知識,也受到思維的訓練,還受到教師嚴謹的治學態度的熏陶和感染
本視頻中較為難點是MySQLi基于面向對象的編程(一)了:
mysqli作為PHP擴展庫的一部分是一個很好的操作數據庫的接口。mysqli的操作方式有兩種,一種是面向過程的,另一類是面向對象的。本文主要講的是面向對象的mysqli操作,主要是作為一個引子,更多的東西希望能多多參考php官方文檔,看完本文再參考一下文檔,相信對mysqli的操作會容易上手
mysqli的基本操作過程:
<?php // 連接數據庫 $mysqli = new mysqli('localhost', 'root', ''); /* 選擇數據庫,也可以在mysqli的構造函數的第四個參數處給出 */ $mysqli->select_db('mydb');? //設置字符集 $mysqli->set_charset('utf8'); //執行操作 $mysqli->query('SELECT?*?FROM?users'); $result?=?$mysqli->fetch_all(); //關閉連接 $mysqli->close();
這兒用new新建了一個mysqli對象,傳入數據庫連接的相關參數就可以獲得一個mysqli對象。可以通過$mysqli->connect_errno判斷連接是否有誤,具體錯誤信息通過$mysqli->connet_error得到。?
連接數據庫之后還要先選擇數據庫,這兒使用的是$mysqli->select-db(‘mydb’)。然后可以設置一下字符集。?
選擇好數據庫之后就可以對數據庫進行操作了,采用mysqli對象的query方法可以執行MySQL語句。這兒需要注意的是:
對于一般的sql語句:?SELECT/DESC/DESCRIBE/SHOW/EXPLAN?執行成功返回mysqli_result對象,執行失敗返回false。對于其他sql語句的執行,執行成功返回true,否則返回false。(不包括預處理語句)
所以常規的insert / delete / update?等都會返回true或者false來表示sql語句是否成功執行。?
執行完sql語句后可以通過mysqli對象的insert_id屬性來查看剛剛insert進入表里面的數據的自增長字段的值。使用affected_rows屬性查看影響的數據行數,error和errno屬性查看錯誤信息
$mysqli->query("INSERT?INTO?users(name,?pass)?VALUES?('good'?,?'nice')"); echo?$mysqli->insert_id; //?插入數據的自增長數據的值 echo?$mysqli->affected_rows;? //?影響的記錄條數
通過query方法執行的select語句會返回一個mysqli_result對象,這個對象就是查詢的結果集對象,可以使用$mysqli_result->fetch_all()等方法獲取到查詢的結果。?