非常詳細的PHP操作數(shù)據庫教程_第1頁
非常詳細的PHP操作數(shù)據庫教程_第2頁
非常詳細的PHP操作數(shù)據庫教程_第3頁
非常詳細的PHP操作數(shù)據庫教程_第4頁
非常詳細的PHP操作數(shù)據庫教程_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、非常詳細的PHP操作數(shù)據庫教程1. 建立和關閉連接1) mysql_connect() resource mysql_connect(string hostname :port:/path/to/socket,string username ,string password) 所有參數(shù)都是可選的 舉例: mysql_connect(localhost, user, password) or die(Could not connect to mysql server!); 注意,符號表示禁止失敗嘗試導致的任何錯誤信息,用戶將看到的是die()中指定的錯誤信息. 注意,當與多個mysql進行連接時

2、,必須指定每個連接的鏈接ID,如下: $link1 = mysql_connect(server1, user, password) or die(Could not connect to mysql server!); $link2 = mysql_connect(server2, user, password) or die(Could not connect to mysql server!);2) mysql_pconnect() resource mysql_pconnect(string hostname :port:/path/to/socket,string username

3、,string password) 與mysql_connect()不同的是:會首先查找現(xiàn)有鏈接,不存在時才創(chuàng)建. 注意,不需要顯示關閉連接(mysql_close(),因為連接將放在池中,所以叫持久連接.3) mysql_close() boolean mysql_close(resource link_id) 關閉連接不是必須的,因為可以由mysql的垃圾回收來處理. 如果沒有指定link_id,則關閉最近的鏈接.2. 選擇數(shù)據庫 mysql_select_db() boolean mysql_select_db(string db_name , resource link_id)3. 查

4、詢MySql1) mysql_query() resource mysql_query(string query ,resource link_id) 負責執(zhí)行query. 2) mysql_db_query() resource mysql_db_query(string database, string query , resource link_id) 等價于mysql_select_db() + mysql_query(),從參數(shù)中就可以清楚的看出來.4. 獲取和顯示數(shù)據 1) mysql_result() mixed mysql_result(resource result_set,

5、 int row ,mixed field) 從result_set 的指定row 中獲取一個field 的數(shù)據. 簡單但是效率低. 舉例: $link1 = mysql_connect(server1, webuser, password) or die(Could not connect to mysql server!); mysql_select_db(company) or die(Could not select database!); $query = select id, name from product order by name; $result = mysql_quer

6、y($query); $id = mysql_result($result, 0, id); $name = mysql_result($result, 0, name); mysql_close(); 注意,上述代碼只是輸出結果集中的第一條數(shù)據的字段值,如果要輸出所有記錄,需要循環(huán)處理. . for ($i = 0; $i = mysql_num_rows($result); $i+) $id = mysql_result($result, 0, id); $name = mysql_result($result, 0, name); echo Product: $name ($id); .

7、 注意,如果查詢字段名是別名,則mysql_result中就使用別名. 2) mysql_fetch_row() array mysql_fetch_row(resource result_set) 從result_set中獲取整行,把數(shù)據放入數(shù)組中. 舉例(注意和list 的巧妙配合): . $query = select id, name from product order by name; $result = mysql_query($query); while(list($id, $name) = mysql_fetch_row($result) echo Product: $nam

8、e ($id); 3) mysql_fetch_array() array mysql_fetch_array(resource result_set ,int result_type) mysql_fetch_row()的增強版. 將result_set的每一行獲取為一個關聯(lián)數(shù)組或/和數(shù)值索引數(shù)組. 默認獲取兩種數(shù)組,result_type可以設置: MYSQL_ASSOC:返回關聯(lián)數(shù)組,字段名=字段值 MYSQL_NUM:返回數(shù)值索引數(shù)組. MYSQL_BOTH:獲取兩種數(shù)組.因此每個字段可以按索引偏移引用,也可以按字段名引用. 舉例: . $query = select id, name

9、 from product order by name; $result = mysql_query($query); while($row = mysql_fetch_array($result, MYSQL_BOTH) $name = $rowname;/或者 $name = $row1; $name = $rowid;/或者 $name = $row0; echo Product: $name ($id); . 4) mysql_fetch_assoc() array mysql_fetch_assoc(resource result_set) 相當于 mysql_fetch_array

10、($result, MYSQL_ASSOC) 5) mysql_fetch_object() object mysql_fetch_object(resource result_set) 和mysql_fetch_array()功能一樣,不過返回的不是數(shù)組,而是一個對象. 舉例: . $query = select id, name from product order by name; $result = mysql_query($query); while($row = mysql_fetch_object($result) $name = $row-name; $name = $row-

11、id; echo Product: $name ($id); 5. 所選擇的記錄和受影響的記錄 1) mysql_num_rows() int mysql_num_rows(resource result_set) 返回result_set中的行數(shù). 注意,mysql_num_rows()只在確定select語句查詢獲得的記錄數(shù)有效,如果要獲取insert/updata/delete查詢影響的記錄數(shù),需要使用mysql_affected_rows(). 2) mysql_affected_rows() int mysql_affected_rows(resource link_id) 獲取in

12、sert/updata/delete查詢影響的記錄數(shù) 注意,不需要輸入參數(shù),默認使用最近建立的數(shù)據庫連接的最近結果.可以使用可選參數(shù)link_id來選擇數(shù)據庫連接. 6. 獲取數(shù)據庫和表的信息1) mysql_list_dbs() resource mysql_list_dbs(resource link_id) 獲取服務器上所有數(shù)據庫名稱. 舉例: mysql_connect(localhost, name,pwd); $dbs = mysql_list_dbs(); while (list($db) = mysql_fetch_row(dbs) echo $db ; 注意,輸出結果與使用的

13、用戶權限相關.2) mysql_db_name() string mysql_db_name(resource result_set, interger index) 獲取在mysql_list_dbs()返回的result_set中位置為index的數(shù)據庫名. 3) mysql_list_tables() resource mysql_list_tables(string database ,resource link_id) 獲取database中的所有表名.4) mysql_tablename() string mysql_tablename(resource result_set, i

14、nterger index) 獲取mysql_list_tables()返回的result_set中位置為index的表名. 在學習PHP的COM 和 .Net(Windows)函數(shù)的時候,發(fā)現(xiàn)了一個通過COM操作SQL SERVER的例子,查找了相關的資料,于是就有了這篇PHP連接ACCESS的文章,相信網上已經很多了,還是貼在這里吧。我的機器環(huán)境:WIN2000,APACHE2,PHP Version 5.1.0RC1Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:php5netBook.mdb); $rs = $conn-Execute(select * from manage); / 記錄集 $num_columns =

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論