本文目錄一覽:
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