物件導向的mysqli基礎

2021-07-08 14:17:07 字數 1699 閱讀 1770

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屬性檢視影響的資料行數,errorerrno屬性檢視錯誤資訊

$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()等方法獲取到查詢的結果。

本文只是乙個引子,更具體的關於mysqli物件的使用方法可以在php官方文件進行查詢

MySQLi物件導向實踐 multi query

多條用分號分隔的sql語句中,只要有一條sql語句執行失敗,那麼這一條sql語句以及之後的sql語句就不會執行。只有當第一條sql語句執行失敗,那麼multi query 的返回值才為false。如果第一條sql語句執行成功了,那麼都會返回true。mysqli new mysqli mysqli ...

MySQLi物件導向實踐 select

對於update insert delete請參考 mysqli new mysqli mysqli connect localhost root root test if mysqli connect errno mysqli set charset utf8 sql select from my...

MySQLi基於物件導向的程式設計

mysqli在windows上,對於php 5.3或更新版本,mysqli擴充套件預設開啟,對於php 5.0 5.1 5.2,mysqli擴充套件預設並不會開啟,因此php.ini中php mysqli.dll這個dll 必須開啟。mysqli基於面向過程的程式設計和物件導向的程式設計是相對的,其...