【php】php操作MySQL數據庫
一、操作步驟:
1. 連接MySQL數據庫並判斷是否連接成功
2. 選擇數據庫
3. 設置字符集
4. 準備SQL語句
5. 向MySQL服務發送SQL語句
6. 解析處理結果集
7. 釋放結果集,關閉數據庫連接
二、常用操作:
1. mysqli_connect();--連接數據庫,並返回一個連接資源
格式: mysql_connect(主機名,用戶,密碼);
--其中參數可選,若不寫則參考php.ini中默認配置
2. mysqli_error(); --獲取剛剛(最後)執行數據庫操作的錯誤信息
3. mysqli_errno(); --獲取剛剛(最後)執行數據庫操作的錯誤號
錯誤號為0表示沒有錯誤
4. mysqli_select_db(數據庫名[,數據庫連接]);
選擇一個數據庫,等同於"use 庫名"語句
5. mysqli_set_charset(字符編碼); --設置字符編碼
例如:mysql_set_charset("utf8"); 等同於:mysql_query("set names utf8");
6. mysqli_query(sql語句[,數據庫連接]); -- 發送一條sql語句
sql語句若是查詢,則返回結果集,其他則返回boolean值表示執行是否成功。
7. 解析結果集函數:
mysqli_fetch_array(); --以關聯和索引兩種方式數組解析結果集
也可以指定第二參數來定義返回格式:
MYSQL_BOTH(0關聯和索引)/MYSQL_NUM(2索引)/MYSQL_ASSOC(1關聯)
mysqli_fetch_row(); --以索引式數組解析結果集
*mysqli_fetch_assoc(); --以關聯式數組解析結果集
mysqli_fetch_object(); --以對象方式解析結果集
8. mysqli_free_result(結果集名); --釋放結果集
9. mysqli_close(數據庫連接); --關閉數據庫連接
10. mysqli_num_rows(結果集); --獲取結果集中的數據條數
11. mysqli_num_fields(結果集); --獲取結果集中的列數(字段數量)
12. mysqli_result(); --定位取結果
echo mysql_result($result,0,3)."<br/>"; //獲取第1條數據的第4列中的值
echo mysql_result($result,1,2)."<br/>"; //獲取第2條數據的第3列中的值
echo mysql_result($result,5,4)."<br/>"; //獲取第6條數據的第5列中的值
13.mysqli_affected_rows — 取得前一次 MySQL 操作所影響的記錄行數
關聯的 INSERT,UPDATE 或 DELETE 查詢所影響的記錄行數。
14. mysqli_insert_id — 取得上一步 INSERT 操作產生的 ID
1 //在php當中操作mysql數據庫的六脈神劍 2 3 //1.連接數據庫服務器,並判斷是否成功 mysqli_connect(服務器地址,用戶名,密碼[,數據庫名]); 4 $link = mysqli_connect(‘localhost‘,‘root‘,‘‘); 5 6 //2.設置字符集 mysqli_set_charset(數據庫服務器對象,要設置的編碼類型); 7 mysqli_set_charset($link,‘utf8‘); 8 9 //3.選擇數據庫 mysqli_select_db(數據庫服務器對象,數據庫服務器中的指定的數據庫名); 10mysqli_select_db($link,‘lamp183‘); 11 12 //4.輸入增、刪、改、查sql語句,並發送執行 mysqli_query(數據庫服務器對象,sql語句); 13 $sql = ‘select * from stu‘; 14 $result = mysqli_query($link,$sql); 15 var_dump($result); 16 17 //5.解析結果集 mysqli_num_rows(query發送sql語句之後的對象結果集),會得到查詢出數據的總條數; 18 if($result!=false && mysqli_num_rows($result)>0){ 19 20 //遍歷獲取每一條數據的數組 mysqli_fetch_assoc(query發送sql語句之後的對象結果集),會得到每一條數據的數組 21 while($rows = mysqli_fetch_assoc($result)){ 22 var_dump($rows); 23 } 24 } 25 26 //6.關閉數據庫,釋放結果集 27 mysqli_free_result($result); 28 mysqli_close($link);
1 //六脈神劍操作數據庫 2 3 //1.連接數據庫服務器,並判斷 4 $link = mysqli_connect(‘localhost‘,‘root‘,‘‘)or die(‘數據庫連接失敗!‘); 5 6 //2.設置字符集 7 mysqli_set_charset($link,‘utf8‘); 8 9 //3.選擇數據庫 10 mysqli_select_db($link,‘lamp183‘); 11 12 //4.定義增、刪、改sql語句,並發送執行 13 14 //定義添加數據的sql語句(發送之後返回布爾型真或假) 15 $sql = "insert into stu (name) values (‘jingfei‘)"; 16 $bool = mysqli_query($link,$sql); 17 18 //獲取上一條插入成功的數據的id號 19 $id = mysqli_insert_id($link); 20 21 //定義刪除數據的sql語句 22 $sql = "delete from stu where id=2"; 23 $bool = mysqli_query($link,$sql); 24 25 //定義修改數據的sql語句 26 $sql = "update stu set name=‘haibo‘ where name=‘haibo‘"; 27 $bool = mysqli_query($link,$sql); 28 29 //5.判斷是否執行成功 mysqli_affected_rows(對象結果集):返回增刪改sql語句執行成功之後的影響行數,如果失敗返回-1 30 if($bool!=false && mysqli_affected_rows($link)>0){ 31 echo "<script>alert(‘恭喜,添加成功!‘);window.location.href=‘3.php‘</script>"; 32 } 33 34 //6.關閉數據庫 35 mysqli_close($link);
【php】php操作MySQL數據庫