Mysqli的使用

一.mysqli擴展的介紹php

1.mysqli擴展和mysql擴展均可以完成對數據庫的操做html

2.mysqli是mysql的升級版mysql

3.mysqli支持面向對象,也支持面向過程;mysql擴展只支持面向過程,從而mysql擴展到目前爲止已經被棄用sql

4.使用mysqli的擴展前,須要引入一個php_mysqli.dll,該文件在php的安裝目錄,在 ~/php/ext/php_mysqli.dll。數據庫

二.mysqli擴展的原理圖fetch

三.如何使用spa

(1)DQLcode

 1 <?php 
 2     header('content-type:text/html;charset=utf8');
 3     /*
 4         參數名就很少說了應該都能看懂
 5     */
 6     $mySQLi=new mySQLi('localhost','root','root','itbull',3306);
 7     //判斷是否鏈接成功 沒有錯誤返回0 有錯誤返回錯誤信息
 8     if($mySQLi->connect_errno){
 9         die('鏈接錯誤,錯誤信息是:'.$mySQLi->connect_error);
10     }else{
11         echo '鏈接成功';
12     }
13     //設置字符集
14     $mySQLi->set_charset('utf8');
15     //拼接sql語句
16     $sql="SELECT * FROM `user3`";
17     //執行sql語句
18     $res=$mySQLi->query($sql);
19     /*echo '<pre>';
20     var_dump($res);*/
21     //顯示數據的時候用$res來循環取出
22     while($row=$res->fetch_assoc()){
23         echo '<pre>';
24         var_dump($row);
25     }
26     //關閉相關資源 不手動關閉 系統也會自動關閉
27     //釋放結果集
28     $res->free();
29     //關閉鏈接
30     $mySQLi->close();
31 
32 
33 
34  ?>

 

(2)DMLhtm

 1 <?php 
 2 
 3     header('content-type:text/html;charset=utf8');
 4     /*
 5         參數名就很少說了應該都能看懂
 6     */
 7     $mySQLi=new mySQLi('localhost','root','root','itbull',3306);
 8     //判斷是否鏈接成功 沒有錯誤返回0 有錯誤返回錯誤信息
 9     if($mySQLi->connect_errno){
10         die('鏈接錯誤,錯誤信息是:'.$mySQLi->connect_error);
11     }else{
12         echo '鏈接成功','<br>';
13     }
14     //設置字符集
15     $mySQLi->set_charset('utf8');
16 
17     $sql="INSERT INTO `user3` VALUES(null,'王五',md5('456'),'ww@sohu.com','2017-10-1')";
18 
19     $sql="UPDATE `user3` SET name='王五五' WHERE id=3";
20 
21     $sql="DELETE FROM `user3` WHERE id=3";
22     //dml語句 成功返回true 失敗返回false
23     if($mySQLi->query($sql)){
24         echo '執行成功','<br>';
25     }else{
26         echo "執行失敗,sql語句是:".$sql,'<br>';
27         echo "失敗的緣由是:".$mySQLi->error,'<br>';
28     }
    
1 //判斷dml語句是否影響了表
2     if($mySQLi->affected_rows>0){
3         echo '<br> 改變了表';
4     }else{
5         echo '<br> 表沒有改變';
6     }
7 
8     //獲取剛剛獲得的id
9     echo "<br> id=".$mySQLi->insert_id;

 

 

(3)從mysql_result中取出數據的方式有四種,推薦使用第一種,$res->data_seek(0)是將結果指向爲0對象

 1 while($row=$res->fetch_assoc()){
 2         echo '<pre>';
 3         var_dump($row);
 4     }
 5 
 6     $res->data_seek(0);//結果指向設置爲0
 7     while($row=$res->fetch_row()){
 8         echo '<pre>';
 9         var_dump($row);
10     }
11 
12     $res->data_seek(0);
13     while($row=$res->fetch_array()){
14         echo '<pre>';
15         var_dump($row);
16     }
17 
18     $res->data_seek(0);
19     while($row=$res->fetch_object()){
20         echo '<pre>';
21         var_dump($row);
22         echo '電子郵件:'.$row->email;
23     }

 

 

相關文章
相關標籤/搜索