多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > php數據庫連接

php數據庫連接

來源:程序員人生   發布時間:2013-12-14 19:34:47 閱讀次數:2853次

通過PHP你可以輕松的連接到數據庫,請求數據并將其顯示在你的web站點中,甚至修改數據庫中的數據。MySQL是一種很流行的數據庫,并且在互聯網中有許多有關PHP與MySQL的教程。MySQL是免費的,這一點也許就吸引了不少人。由于其廣泛應用,我就不想在這里贅述MySQL的使用方法了。Oracle被大量在企業應用中采用,因此我們就利用Oracle來介紹PHP與數據庫的連接。我們當然不會提及Oracle數據庫的設計原理,原因是這已經超出了我們的討論范圍。

PHP提供了兩套函數與Oracle連接,分別是ORA_和OCI函數。其中ORA_函數略顯陳舊。OCI函數更新據說更好一些。兩者的使用語法幾乎相差無幾。如前所述,你的PHP安裝選項應該可以支持兩者的使用。

4.1 連接

  1.  
  2. if ($conn=Ora_Logon("user@TNSNAME","password"))  
  3. {  
  4. echo "SUCCESS ! Connected to database ";  
  5. }  
  6. else 
  7. {  
  8. echo "Failed :-( Could not connect to database ";  
  9. }  
  10. Ora_Logoff($conn);  
  11. phpinfo();  
  12. ?> 

以上代碼使用TNSNAME(在你的tnsnames.ora文件中指明)定義的Oracle數據庫名稱、用戶名稱和密碼連接數據庫。在成功連接的基礎上,ora_logon函數返回一個非零的連接ID并儲存在變量$conn中。

4.2 查詢

假設與數據庫已經連接就緒,下面我們就來實際的應用對數據庫的查詢。下面的代碼演示了一個連接并查詢的典型例子:
以下是引用片段:

  1.  
  2. /*
  3. * 連接數據庫并執行查詢  
  4. */ 
  5. function printoraerr($in_cur)  
  6. {  
  7. // 檢查Oracle是否出錯  
  8. // 如果存在錯誤則顯示  
  9. // 當指針被激活時每次請求Oracle后調用該函數  
  10. if(ora_errorcode($in_cur))  
  11. echo "Oracle code - ".ora_error($in_cur)." ";  
  12. return;  
  13. }  
  14. /** 主程序 */ 
  15. if (!($conn=ora_logon("user@TNSNAME","password")))  
  16. {  
  17. echo "Connection to database failed ";  
  18. exit;  
  19. }  
  20. echo "Connected as connection - $conn 
  21. ";  
  22. echo "Opening cursor ...  
  23. ";  
  24. $cursor=ora_open($conn); printoraerr($cursor);  
  25. echo "Opened cursor - $cursor 
  26. ";  
  27. $qry="select user,sysdate from dual";  
  28. echo "Parsing the query $qry ...  
  29. ";  
  30. ora_parse($cursor,$qry,0); printoraerr($cursor);  
  31. echo "Query parsed  
  32. ";  
  33. echo "Executing cursor ...  
  34. ";  
  35. ora_exec($cursor); printoraerr($cursor);  
  36. echo "Executed cursor  
  37. ";  
  38. echo "Fetching cursor ...  
  39. ";  
  40. while(ora_fetch($cursor))  
  41. {  
  42. $user=ora_getcolumn($cursor,0); printoraerr($cursor);  
  43. $sysdate=ora_getcolumn($cursor,1); printoraerr($cursor);  
  44. echo " row = $user$sysdate 
  45. ";  
  46. }  
  47. echo "Fetched all records  
  48. ";  
  49. echo "Closing cursor ...  
  50. ";  
  51. ora_close($cursor);  
  52. echo "Closed cursor  
  53. ";  
  54. echo "Logging off from oracle...  
  55. ";  
  56. ora_logoff($conn);  
  57. echo "Logged off from oracle  
  58. ";  
  59. ?> 

(譯者注:以上代碼段缺少注釋,請讀者參考PHP Manual的Oracle數據庫函數部分)

4.3 顯示結果

以下代碼演示了怎樣查詢數據庫并將結果輸出:以下是引用片段:

  1. function printoraerr($in_cur$conn)  
  2. {  
  3. // 檢查Oracle是否出錯  
  4. // 如果存在錯誤則顯示  
  5. // 當指針被激活時每次請求Oracle后調用該函數  
  6. // If it encountered an error, we exit immediately  
  7. if(ora_errorcode($in_cur))  
  8. {  
  9. echo "Oracle code - ".ora_error($in_cur)."  
  10. n";  
  11. ora_logoff($conn);  
  12. exit;  
  13. }  
  14. return;  
  15. }  
  16. function exequery($w_qry,$conn)  
  17. {  
  18. $cursor=ora_open($conn); printoraerr($cursor,$conn);  
  19. ora_parse($cursor,$w_qry,0); printoraerr($cursor,$conn);  
  20. ora_exec($cursor); printoraerr($cursor,$conn);  
  21. $numrows=0;  
  22. $w_numcols=ora_numcols($cursor);  
  23. // 顯示頭部  
  24. echo "  
  25. ";  
  26. for ($i=0;$i<$w_numcols;$i++)  
  27. {  
  28. $align=(ora_columntype($cursor,$i)=="NUMBER")?"RIGHT":"LEFT";  
  29. echo " ".ora_columnname($cursor,$i)." ";  
  30. }  
  31. echo "  
  32. ";  
  33. while(ora_fetch($cursor))  
  34. {  
  35. echo " ";  
  36. for ($i=0;$i<$w_numcols;$i++)  
  37. {  
  38. $align=(ora_columntype($cursor,$i)=="NUMBER")?"RIGHT":"LEFT";  
  39. if(ora_columntype($cursor,$i)=="LONG")  
  40. echo " ".  
  41. ora_getcolumn($cursor,$i)."  
  42. ";  
  43. else 
  44. echo " ".ora_getcolumn($cursor,$i)." ";  
  45. printoraerr($cursor,$conn);  
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产精品视频久久久久 | 国产精品亚洲欧美日韩一区在线 | 日本亚洲天堂 | 亚洲特一级毛片 | 亚洲欧美日本韩国 | 一级做a爰片久久毛片潮喷 一级做a爰片久久毛片看看 | 最近中文字幕无吗免费高清 | free性欧美极度另类3d | 午夜香蕉网| 午夜视频入口 | 欧美性高清极品猛交 | 最新国产一区二区精品久久 | 日本一级淫片免费放 | 欧美性videos高清精品 | 国产精品区一区二区三 | 自拍偷拍 欧美日韩 | 中文在线视频观看 | 最近最中文字幕视频 | 宇都宫紫苑(rion)在线播放 | 欧美性区 | 午夜爽爽爽男女免费观看hd | 日本一区不卡在线 | 国产中文字幕在线观看 | 日本护士xxxxxwww | 欧美日韩一级视频 | 国产男女爽爽爽爽爽免费视频 | 亚州免费视频 | 一二三四视频中文字幕在线看 | 波多野结衣一区在线观看 | 2020久久国产最新免费观看 | 精品精品国产高清a毛片 | 亚洲日本一区二区三区 | 亚洲天堂第一页 | 成人精品视频在线观看播放 | 福利二区 | 欧美一级毛片高清毛片 | 国产一区精品视频 | 亚洲v日本 | 伊人久久大香线蕉综合网站 | 亚洲高清在线观看看片 | 国产视频中文字幕 |