MySQL數(shù)據(jù)庫是應(yīng)用層最常用的關(guān)系型數(shù)據(jù)庫之一,而PHP mysqli便是用來操作MySQL數(shù)據(jù)庫的擴展庫。使用PHP mysqli可以進(jìn)行數(shù)據(jù)庫的連接、數(shù)據(jù)表的CRUD等操作。下面來詳細(xì)介紹一下PHP mysqli這一擴展庫的使用。
連接數(shù)據(jù)庫
要使用PHP mysqli對MySQL數(shù)據(jù)庫進(jìn)行操作,連接數(shù)據(jù)庫是必不可少的第一步。在PHP mysqli中,可以通過mysqli_connect()函數(shù)來連接數(shù)據(jù)庫。具體的語法如下:
mysqli_connect($host, $username, $passwd, $dbname, $port, $socket);其中,$host代表MySQL數(shù)據(jù)庫的主機地址,$username代表登錄MySQL數(shù)據(jù)庫的用戶名,$passwd代表登錄MySQL數(shù)據(jù)庫的密碼,$dbname代表連接的數(shù)據(jù)庫名稱,$port代表MySQL數(shù)據(jù)庫的端口號,$socket代表MySQL數(shù)據(jù)庫的socket名稱。以下是一個連接MySQL數(shù)據(jù)庫的實例代碼:
$conn = mysqli_connect('localhost', 'root', 'password', 'mydb');查詢數(shù)據(jù) 連接好MySQL數(shù)據(jù)庫之后,下一步就是要從數(shù)據(jù)表中查詢數(shù)據(jù)了。在PHP mysqli中,查詢數(shù)據(jù)需要通過mysqli_query()函數(shù)來實現(xiàn)。具體的語法如下:
mysqli_query($conn, $sql);其中,$conn代表數(shù)據(jù)庫連接實例,$sql代表要執(zhí)行的SQL語句。以下是一個查詢數(shù)據(jù)的實例代碼:
$sql = "SELECT name, age FROM user WHERE gender='male'"; $result = mysqli_query($conn, $sql); if(mysqli_num_rows($result) >0) { while($row = mysqli_fetch_assoc($result)) { echo "Name: " . $row["name"] . " , Age: " . $row["age"] . "上述實例代碼中,首先定義了要執(zhí)行的SQL語句,并通過mysqli_query()函數(shù)執(zhí)行。接著判斷查詢結(jié)果是否為空,如果不為空則通過mysqli_fetch_assoc()函數(shù)獲取每一行的數(shù)據(jù)并打印出來,如果為空則輸出“0 results”。 插入數(shù)據(jù) 查詢數(shù)據(jù)之后,我們可能還需要往數(shù)據(jù)表中插入新的數(shù)據(jù)。在PHP mysqli中,插入數(shù)據(jù)需要通過mysqli_query()函數(shù)來實現(xiàn)。具體的語法如下:
"; } } else { echo "0 results"; }
mysqli_query($conn, $sql);其中,$conn代表數(shù)據(jù)庫連接實例,$sql代表要執(zhí)行的SQL語句。以下是一個插入數(shù)據(jù)的實例代碼:
$sql = "INSERT INTO user (name, age, gender) VALUES ('Tom', '19', 'male')"; if(mysqli_query($conn, $sql)) { echo "New record created successfully"; } else { echo "Error: " . mysqli_error($conn); }上述實例代碼中,定義了要插入的數(shù)據(jù),并通過mysqli_query()函數(shù)執(zhí)行。接著判斷插入結(jié)果是否成功,成功則輸出“New record created successfully”,失敗則輸出錯誤信息。 更新數(shù)據(jù) 可能出現(xiàn)需要更新數(shù)據(jù)的情況。在PHP mysqli中,更新數(shù)據(jù)需要通過mysqli_query()函數(shù)來實現(xiàn)。具體的語法如下:
mysqli_query($conn, $sql);其中,$conn代表數(shù)據(jù)庫連接實例,$sql代表要執(zhí)行的SQL語句。以下是一個更新數(shù)據(jù)的實例代碼:
$sql = "UPDATE user SET age='20' WHERE name='Tom'"; if(mysqli_query($conn, $sql)) { echo "Record updated successfully"; } else { echo "Error: " . mysqli_error($conn); }上述實例代碼中,定義了要更新的數(shù)據(jù),并通過mysqli_query()函數(shù)執(zhí)行。接著判斷更新結(jié)果是否成功,成功則輸出“Record updated successfully”,失敗則輸出錯誤信息。 刪除數(shù)據(jù) 還可能出現(xiàn)需要從數(shù)據(jù)表中刪除某些數(shù)據(jù)的情況。在PHP mysqli中,刪除數(shù)據(jù)需要通過mysqli_query()函數(shù)來實現(xiàn)。具體的語法如下:
mysqli_query($conn, $sql);其中,$conn代表數(shù)據(jù)庫連接實例,$sql代表要執(zhí)行的SQL語句。以下是一個刪除數(shù)據(jù)的實例代碼:
$sql = "DELETE FROM user WHERE name='Tom'"; if(mysqli_query($conn, $sql)) { echo "Record deleted successfully"; } else { echo "Error: " . mysqli_error($conn); }上述實例代碼中,定義了要刪除的數(shù)據(jù),并通過mysqli_query()函數(shù)執(zhí)行。接著判斷刪除結(jié)果是否成功,成功則輸出“Record deleted successfully”,失敗則輸出錯誤信息。 總結(jié) 本文介紹了PHP mysqli擴展庫的基本使用方法,包括連接數(shù)據(jù)庫、查詢數(shù)據(jù)、插入數(shù)據(jù)、更新數(shù)據(jù)和刪除數(shù)據(jù)。熟練掌握這些方法,可以輕松地完成對MySQL數(shù)據(jù)庫的操作。