PHP訪問MySQL數據庫

9PHP訪問MySQL數據庫php

1.  PHP訪問MySQL數據庫服務器的流程mysql

以前學習mysql的時候,採用的是客戶機/服務器」的體系結構sql

 

mysql>select * from a;    --------》MySQL數據庫服務器數據庫

                                     《 ---------編程

 

 

PHP訪問MySQL數據庫的時候,咱們的PHP則充當了客戶機的角色數組

 

PHP充當了客戶機的角色-----------》MySQL數據庫服務器服務器

             《-----------函數式編程

 

 

 

接下來咱們能夠經過phpinfo()的函數來肯定mysql模塊是否被安裝函數

 

Mysql裏面,返回的數據大體能夠分爲兩類:學習

InsertupdatedeleteDML語句):該類語句執行成功就返回TRUE,不然就返回FALSE

SelectDQL語句):返回的是查詢的結果,專業名詞被稱爲結果集(就是結果的集合)

 

PHP操做數據庫的步驟:其實就和在客戶端操做數據庫的步驟如出一轍

 

                              

                                                                   鏈接數據庫

                                                                           |

                                                                   選擇數據庫

                                                                            |

                                            行被影響——  執行SQL語句----返回結果集

                                                   \                                                   |

 

                       \            處理結果集

                                                                            |

 

                                                                       關閉鏈接

 

2. PHP腳本里面鏈接MySQL服務器

① 鏈接數據庫

PHPmysql擴展裏面給咱們提供了一個函數

mysql_connect(「主機名稱」,」用戶名」,」密碼」)

就是和咱們之前經過mysql客戶端鏈接數據庫的語法是同樣的

以下:

 

 

PHP裏面鏈接數據庫和在客戶端同樣

 

若是鏈接錯誤,報的錯誤信息也是和客戶機是同樣的

 

 

 

由於mysql數據庫模塊如今已經漸漸的被淘汰,如今基本上使用mysqli或者使用pdo

@:錯誤屏蔽運算符  能夠屏蔽錯誤信息

 

 

鏈接數據庫成功之後,咱們就能夠經過一系列的MySQL擴展函數來查看數據庫的相關信息

Mysql_get_client_info():獲取客戶端信息

Mysql_get_host_info():獲取主機信息

Mysql_get_proto_info():獲取mysql的協議信息

Mysql_get_server_info():獲取mysql中的服務器信息

  

② 選擇數據庫

Mysql_select_db(「數據庫名稱」,數據庫資源變量)

 

這一步和mysql裏面的use 數據庫名操做是同樣的

 

 

 

③ 發送SQL語句

Mysql裏面提供了mysql_query()函數用於執行sql語句的,執行該語句後,若是返回結果集,那麼接收結果集的變量是一個資源類型變量

 

 

若是執行的語句沒有結果集返回,則返回TRUE或者FALSE,因此天然接收返回值的變量的數據類型也是布爾類型

 

 

④ 處理結果集

處理結果集的函數有下面4個:

Mysql_fetch_row():將結果集中的一條記錄返回而且以索引數組的形式保存

Mysql_fetch_assoc():將結果集中的一條記錄返回而且以關聯數組的形式保存

Mysql_fetch_array():將結果集中的一條記錄返回而且以索引和關聯數組的形式保存,MYSQL_BOTH,MYSQL_NUM,MYSQL_ASSOC

Mysql_fetch_object():將結果集中的一條記錄以對象的形式進行返回

 

 

將結果集裏面的全部數據都打印出來,須要外層使用一個while語句

  

將數據以表格的形式打印輸出

 

⑤  關閉鏈接,釋放資源

能夠經過mysql_free_result()函數來釋放資源

 

經過mysql_close來關閉數據庫鏈接

 

 

接下來再介紹幾個比較經常使用的mysql擴展函數

Mysql_field_name():獲取字段名

Mysql_num_rows():獲取結果集中行的數量

Mysql_num_field():獲取結果集中列的數量

 

 

MySQLi

Mysqli是在mysql的基礎上的一個升級。最大的改進在於採用面向對象的思想,以前的mysql是面向過程的,像c語言同樣。

Mysqli雖然採用了面向對象的思想,可是仍然能夠採用函數式編程

相關文章
相關標籤/搜索