php的mysqli擴展被封裝到一個類中,是一種面向對象的技術,執行速度更快,與傳統的過程化方法相比更方便也更高效.
默認情況下mysqli在php是未開啟的我們需在要在PHP中使用mysqli擴展,需要在配置文件php.ini中添加如下的設置:
extension=php_mysqli.dll
如果配置文件中已有上述設置,確保extension前面沒有“;”,否則將其去掉,下面開始介紹如何使用mysqli擴展來存取數據庫,即可了,代碼如下:
- <?php
- $db_host="localhost"; //連接的服務器地址
- $db_user="root"; //連接數據庫的用戶名
- $db_psw="root"; //連接數據庫的密碼
- $db_name="sunyang"; //連接的數據庫名稱
- $mysqli=new mysqli();
- $mysqli->connect($db_host,$db_user,$db_psw,$db_name);
- ?>
關閉與MySQL服務器的連接通過mysqli對象調用close()方法即可,例如:
$mysqli->close();
代碼如下:
- <?php
- $connection = mysqli_connect("localhost","root","root","sunyang");
- if ( $connection ) {
- echo "數據庫連接成功";
- }else {
- echo "數據庫連接失敗";
- }
- ?>
數據查詢,代碼如下:
- <?php
- $mysqli=new mysqli("localhost","root","root","sunyang"); //實例化mysqli//開源代碼Vevb.com
- $query="select * from employee";
- $result=$mysqli->query($query);
- if ($result) {
- if($result->num_rows>0){ //判斷結果集中行的數目是否大于0
- while($row =$result->fetch_array() ){ //循環輸出結果集中的記錄
- echo ($row[0])."<br>";
- echo ($row[1])."<br>";
- echo ($row[2])."<br>";
- echo ($row[3])."<br>";
- echo "<hr>";
- }
- }
- }else {
- echo "查詢失敗";
- }
- $result->free();
- $mysqli->close();
- ?>
其它的像數據保存等待.
mysqli類中的成員方法:
__construct():構造方法,用于創建一個mysqli對象,也可以建立一個連接.
autocommit():開啟或關閉數據庫修改自動提交.
change_user():改變數據庫連接所指定的用戶.
character_set_name():返回數據庫連接默認字符集.
close():關閉先前打開的連接.
commit():提交當前的事物.
connect():打開一個新的連接到mysql數據庫服務器.
debug():執行調試操作.
dump_debug_info():轉儲調試信息.
get_client_info():返回客戶端版本.
get_host_info():返回一個字符串代表的連接使用類型,如:Localhost via UNIX socket
get_server_info():返回mysql服務器版本.
get_server_version():返回整數形式的mysql服務器版本.
init():初始化一個mysqli并返回一個資源.
info():檢索有關最近執行的查詢.
kill():殺死一個mysql線程.
multi_query():執行多個查詢語句.
more_results():從多查詢語句中檢索是否有任何更多的查詢結果.
next_result():從當前執行的多查詢中讀取下一個結果.
options():設置選項.
ping():如果沒有連接,ping一臺服務器連接或重新連接.
prepare():準備一個sql語句的執行,返回mysqli_stmt對象.
query():與數據庫交互都是通過查詢進行的,該方法向數據庫發送查詢來執行,執行失敗返回FALSE.
real_connect():試圖打開一個連接到mysql數據庫服務器.
escape_string():轉義特殊字符的字符串.
rollback():回滾當前的事務.
select_db():為數據庫查詢選擇一個默認的數據庫.
set_charset():設置默認客戶端字符集.
ssl_set():使用ssl用于建立安全連接.
stat():獲取當前的系統狀態.
stmt_init():初始化一個聲明,返回一個mysql_stmt對象.
store_result():從最后查詢中轉讓結果集.
thread_safe():是否考慮返回安全的線程.
mysql類中的成員屬性:
$affected_rows:前一個mysql操作中影響的行數.
$client_info:mysql客戶端版本(字符串).
$client_version:mysql客戶端版本(整數).
$errno:最近函數調用的錯誤代碼.
$error:最近函數調用的錯誤信息字符串.
$field_count():查詢獲取的列數.
$host_info:連接類型使用(字符串).
$info:最近執行的查詢.
$insert_id:最后查詢自動生成的編號.
$protocol_version:mysql協議使用的版本.
$sqlstate:包含SQLSTATE錯誤碼的最后一個錯誤.
$thread_id:當前連接線程ID.
$warning_count:前一個sql語句執行過程中產生的警告數量.
新聞熱點
疑難解答