Heim >php教程 >php手册 >php连接oracle数据库并查询数据sql

php连接oracle数据库并查询数据sql

WBOY
WBOYOriginal
2016-05-25 16:38:151547Durchsuche

php有强大的功能不但可以支持mysql,mssql,mysqli之个我们还可以与oracle数据连接哦,要让php支持oracle非常的简单我们只要把php.ini中的;extention = php_oci8.dll分号去掉即可.

php支持oracle连接函数

php.ini文件中的配置,去掉 ;extention = php_oci8.dll,去掉前面的分号,重启apache就可以了,如果不行,我们再把php目录中的php_oci8.dll拷到windows系统的system32下面去吧.

oracle数据库建立链接,代码如下:

1.$conn = oci_connect('username','password',"(DEscriptION=(ADDRESS=(PROTOCOL =TCP)(HOST=192.168.1.100)(PORT = 1521))(CONNECT_DATA =(SID=test)))");

2.$conn = oci_connect('username','password','192.168.1.100/test');

3.Oracle 连接方法:

set adocon=Server.Createobject("adodb.connection") 

adocon.open"Driver={microsoft odbc for oracle};server=oraclesever.world;uid=admin;pwd=pass;"

4.Oracle OLE DB 连接方法:

set adocon=Server.Createobject("adodb.connection") 

adocon.open"Provider=OraOLEDB.Oracle;data source=dbname;user id=admin;password=pass;"

有的时候第一种方式不行,使用第二种,里面的几个参数分别是用户名、密码、oracle服务地址,其中test是服务名,代码如下:

$sql = "select * from table_exmaple" 
$ora_test = oci_parse($conn,$sql);  //编译sql语句 
oci_execute($ora_test,OCI_DEFAULT);  //执行 
while($r=oci_fetch_row($ora_test))  //取回结果 
{ 
echo $ora_test[0]; 
echo "<BR>";   
}

看个完整的例子,如果PHP版本>5.0,那么使用下面的函数:

oci_connect ( username, password , dbname )

例子,代码如下:

<?php
$conn = oci_connect(&#39;hr&#39;, &#39;hr&#39;, &#39;orcl&#39;); // 建立连接
if (!$conn) {
    $e = oci_error();
    print htmlentities($e[&#39;message&#39;]);
    exit;
}
$query = &#39;SELECT * FROM DEPARTMENTS&#39;; // 查询语句
$stid = oci_parse($conn, $query); // 配置SQL语句,准备执行
if (!$stid) {
    $e = oci_error($conn);
    print htmlentities($e[&#39;message&#39;]);
    exit;
}
$r = oci_execute($stid, OCI_DEFAULT); // 执行SQL。OCI_DEFAULT表示不要自动commit
if (!$r) {
    $e = oci_error($stid);
    echo htmlentities($e[&#39;message&#39;]);
    exit;
}
// 打印执行结果
print &#39;<table border="1">&#39;;
while ($row = oci_fetch_array($stid, OCI_RETURN_NULLS)) {
    print &#39;<tr>&#39;;
    foreach ($row as $item) {
        print &#39;<td>&#39; . ($item ? htmlentities($item) : &#39; &#39;) . &#39;</td>&#39;;
    }
    print &#39;</tr>&#39;;
}
print &#39;</table>&#39;;
oci_close($conn);


文章链接:

随便收藏,请保留本文地址!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn