您好,登錄后才能下訂單哦!
本文主要給大家簡單講講Mysqli的基本操作方法,相關專業術語大家可以上網查查或者找一些相關書籍補充一下,這里就不涉獵了,我們就直奔主題吧,希望Mysqli的基本操作方法這篇文章可以給大家帶來一些實際幫助。
數據庫連接
首先肯定需要連接數據庫。連接數據前,我們需要準備的一般有數據庫的賬號、密碼、端口號、數據庫名。
因為網絡原因或其他原因經常會有連接不上數據庫的情況,所以,我們需要做連接失敗的處理。
<?php // 數據庫連接 $mysqli = mysqli_connect( 'localhost', 'root', '', 'test' ); if (mysqli_connect_errno()) { throw new Exception('databases connect error:' .mysqli_connect_error()); } // ...一些數據庫操作 // 關閉數據庫資源 mysqli_close($mysqli);
設置字符集
設置字符集使用mysqli_set_charset();
字符集目前我們大都使用utf8mb4,因為他支持4個字節長度的字符。他支持一些emoji表情字符。當然如果你不需要支持4字節字符的話可以選擇使用utf8,因為他比較剩空間。
mysqli_set_chartset($mysqli, 'utf8mb4');
重新選擇數據庫
數據庫連接后,還可以重新選擇數據庫。
mysqli_select_db($mysqli, '數據庫名');
CURD操作
mysqli_query():對數據庫執行一次操作,DDL、DQL 、DML都支持。
mysqli_affected_rows():獲取影響記錄行數。
新增數據操作
mysqli_query($mysqli, "INSERT INTO users(username, age, sex) VALUES('周杰倫', 35, '男'), ('謝霆鋒', 35, '男')" ); if (mysqli_affected_rows($mysqli) <= 0) { throw new Exception('databases insert error:' . mysqli_error($mysqli)); }
修改數據操作
這里面有一個注意點,mysqli_affected_rows返回的值為0的情況。它更新的信息與上次完全一樣,這個情況很普遍。比如說在修改的時候,連續點擊了多次修改按鈕。但并不能說明程序代碼有問題。所以,和新增不一樣的是,返回0也應該是成功狀態。
mysqli_query($mysqli, "UPDATE users SET age=40 WHERE user_id = 1" ); if (mysqli_affected_rows($mysqli) < 0) { throw new Exception('databases update error:' . mysqli_error($mysqli)); }
刪除數據操作
注意:修改和刪除操作必須加where條件,不然將會修改整個表的數據,后果不堪設想(刪庫跑路o(╯□╰)o)。
mysqli_query($mysqli, "Delete FROM users WHERE user_id = 100" ); if (mysqli_affected_rows($mysqli) <= 0) { throw new Exception('databases delete error:' . mysqli_error($mysqli)); }
查詢操作
當mysqli_query執行的是一條查詢語句時,該函數會返回mysqli_result結果集。
mysqli_fetch_all()從結果集中獲取全部數據。該函數第二個參數可以指定返回數據的格式。分別為:
MYSQLI_NUM:返回索引數組
MYSQLI_ASSOC:返回關聯數組
MYSQLI_BOTH:既有索引數組也有關聯數組
另外需要注意,對結果集的操作結束后,記得銷毀結果集資源。
// 數據庫連接 $mysqli = mysqli_connect( 'localhost', 'root', '', 'test' ); if (mysqli_connect_errno()) { throw new Exception('databases connect error:' .mysqli_connect_error()); } mysqli_set_charset($mysqli, 'utf8mb4'); $result = mysqli_query($mysqli, "SELECT * FROM users" ); if (mysqli_affected_rows($mysqli) < 0) { throw new Exception('databases select error:' . mysqli_error($mysqli)); } $users = mysqli_fetch_all($result, MYSQLI_ASSOC); // 銷毀結果集資源 mysqli_free_result($result); // 關閉數據庫資源 mysqli_close($mysqli);
Mysqli的基本操作方法就先給大家講到這里,對于其它相關問題大家想要了解的可以持續關注我們的行業資訊。我們的板塊內容每天都會捕捉一些行業新聞及專業知識分享給大家的。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。