php連接oracle問題(資料庫和php的連接)

本文目錄一覽:

PHP怎麼連oracle

在PHP的開發過程中,會需要連接資料庫。一般情況下我們用的是mysql資料庫,相信這個大家都很熟了,使用mysql_*函數就能操作mysql資料庫了。但是我們時候後也會用到Oraclel資料庫,畢竟Oracle比較安全。PHP提供了兩套函數與Oracle連接,分別是ORA_和OCI函數。其中ORA_函數略顯陳舊。OCI函數更新據說更好一些。兩者的使用語法幾乎相差無幾。你的PHP安裝選項應該可以支持兩者的使用。

代碼:

thinkPHP5連接oracle一直報錯

解決方法如下:

1.先檢查伺服器端的監聽服務是否打開,如果沒有打開請啟動其監聽

客戶端:tnsping tns_name

伺服器Linux下:

#lsnrctl status 查看監聽狀態

#lsnrctl start 啟動監聽

2.通過Sql Plus連接一下試試,如果Sql Plus連接能成功,那就說明你的tnsnames.ora內容有錯誤 我的問題就在別名dev_db前面有一個空格,這個可以通過文本編輯器(Edit Plus,UE等)來查看是否有空格,只要有空格那就肯定是不行的,而且如果那段內容是出現在文件的中間的話,將導致該文件里所有相應的連接別名都不成功,如果是在最後面就只有其自身連接別名不能成功,其他連接別名還是能連接成功。(註:我的tnsnames.ora配置了多個資料庫實例的連接,所有才有多個連接別名。)

dev_db =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 172.168.10.5)(PORT = 1521)))

(CONNECT_DATA =

(SID = ora10)

)

)

3.如果確保你的tnsnames.ora內容沒有錯誤,那請將%ORACLE_HOME%\product\10.2.0\db_1\NETWORK\ADMIN目錄下的所有文件刪了,然後重新連接,一般就能解決了。 說明一下:那個目錄里的文件是在你建立連接的時候動態生成的,不要怕刪了會有問題

4.進入PLSQL Developer的主界面,在登錄界面選擇取消即不登錄進入主界面,然後選擇菜單Tools(工具)-Preferences(首選項),在設置窗口中,選擇Oracle-Connection(連接),對應設置窗口中,找到Oracle Home(Oracle主目錄),選擇你本地所安裝客戶端的版本,保存設置,然後重新啟動PLSQL Developer,這時就可以正常登錄了。

PHP如何連接oracle資料庫

首先你要在php.ini文件中找到

extension=php_oci8.dll 前面的注釋符號「;」去掉,使php能夠載入支持oracle的模塊;

下面的代碼是調試通過的,可直接使用的:

html

body

?php

$dbconn=OCILogon(“root”,”pass”,”(DESCRIPTION=(ADDRESS=(PROTOCOL =TCP)(HOST=遠程IP)(PORT = 1521))(CONNECT_DATA =(SID=GZXNCW)))”);

if($dbconn!=false)

{

echo “連接成功”;

if(OCILogOff($dbconn)==true)

{

echo “關閉連接成功!”;

}

}

else

{

echo “連接失敗”;

}

?

/body

/html

?php

$dbconn=oci_connect(“你的賬號”,”你的密碼”,”你的資料庫名稱”);//請把中文件設置為你的值;

$stmt=oci_parse($dbconn, “select * from scott.hallo”);

oci_execute($stmt, OCI_DEFAULT);

echo $conn.”—-selecting\n\n”;

while (oci_fetch($stmt))

{

echo ($conn.”[“.oci_result($stmt, “TEST”).”]\n\n”);

}

echo ($conn . “—-done\n\n”);

?

PHP如何連接oracle

首先你要在php.ini文件中找到

extension=php_oci8.dll 前面的注釋符號「;」去掉,使php能夠載入支持oracle的模塊;

下面的代碼是調試通過的,可直接使用的:

html

body

?php

$dbconn=OCILogon(“root”,”pass”,”(DESCRIPTION=(ADDRESS=(PROTOCOL =TCP)(HOST=遠程IP)(PORT = 1521))(CONNECT_DATA =(SID=GZXNCW)))”);

if($dbconn!=false)

{

echo “連接成功”;

if(OCILogOff($dbconn)==true)

{

echo “關閉連接成功!”;

}

}

else

{

echo “連接失敗”;

}

?

/body

/html

?php

$dbconn=oci_connect(“你的賬號”,”你的密碼”,”你的資料庫名稱”);//請把中文件設置為你的值;

$stmt=oci_parse($dbconn, “select * from scott.hallo”);

oci_execute($stmt, OCI_DEFAULT);

echo $conn.”—-selecting\n\n”;

while (oci_fetch($stmt))

{

echo ($conn.”[“.oci_result($stmt, “TEST”).”]\n\n”);

}

echo ($conn . “—-done\n\n”);

?

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/290729.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-24 13:13
下一篇 2024-12-24 13:13

相關推薦

  • Python官網中文版:解決你的編程問題

    Python是一種高級編程語言,它可以用於Web開發、科學計算、人工智慧等領域。Python官網中文版提供了全面的資源和教程,可以幫助你入門學習和進一步提高編程技能。 一、Pyth…

    編程 2025-04-29
  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • 如何解決WPS保存提示會導致宏不可用的問題

    如果您使用過WPS,可能會碰到在保存的時候提示「文件中含有宏,保存將導致宏不可用」的問題。這個問題是因為WPS在默認情況下不允許保存帶有宏的文件,為了解決這個問題,本篇文章將從多個…

    編程 2025-04-29
  • Python 常用資料庫有哪些?

    在Python編程中,資料庫是不可或缺的一部分。隨著互聯網應用的不斷擴大,處理海量數據已成為一種趨勢。Python有許多成熟的資料庫管理系統,接下來我們將從多個方面介紹Python…

    編程 2025-04-29
  • openeuler安裝資料庫方案

    本文將介紹在openeuler操作系統中安裝資料庫的方案,並提供代碼示例。 一、安裝MariaDB 下面介紹如何在openeuler中安裝MariaDB。 1、更新軟體源 sudo…

    編程 2025-04-29
  • Java Thread.start() 執行幾次的相關問題

    Java多線程編程作為Java開發中的重要內容,自然會有很多相關問題。在本篇文章中,我們將以Java Thread.start() 執行幾次為中心,為您介紹這方面的問題及其解決方案…

    編程 2025-04-29
  • 如何將Oracle索引變成另一個表?

    如果你需要將一個Oracle索引導入到另一個表中,可以按照以下步驟來完成這個過程。 一、創建目標表 首先,需要在資料庫中創建一個新的表格,用來存放索引數據。可以通過以下代碼創建一個…

    編程 2025-04-29
  • Python爬蟲亂碼問題

    在網路爬蟲中,經常會遇到中文亂碼問題。雖然Python自帶了編碼轉換功能,但有時候會出現一些比較奇怪的情況。本文章將從多個方面對Python爬蟲亂碼問題進行詳細的闡述,並給出對應的…

    編程 2025-04-29
  • PHP怎麼接幣

    想要在自己的網站或應用中接受比特幣等加密貨幣的支付,就需要對該加密貨幣擁有一定的了解,並使用對應的API進行開發。本文將從多個方面詳細闡述如何使用PHP接受加密貨幣的支付。 一、環…

    編程 2025-04-29
  • NodeJS 建立TCP連接出現粘包問題

    在TCP/IP協議中,由於TCP是面向位元組流的協議,發送方把需要傳輸的數據流按照MSS(Maximum Segment Size,最大報文段長度)來分割成若干個TCP分節,在接收端…

    編程 2025-04-29

發表回復

登錄後才能評論