php连接oracle数据库及查询数据的⽅法
本⽂实例讲述了php连接oracle数据库及查询数据的⽅法。分享给⼤家供⼤家参考。具体分析如下:
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("tion")
adocon.open"Driver={microsoft odbc for oracle};server=oraclesever.world;uid=admin;pwd=pass;"
4.Oracle OLE DB 连接⽅法:
复制代码代码如下:
set adocon=Server.Createobject("tion")
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('hr', 'hr', 'orcl'); // 建⽴连接
if (!$conn) {
$e = oci_error();
print htmlentities($e['message']);
exit;
}
$query = 'SELECT * FROM DEPARTMENTS'; // 查询语句
$stid = oci_parse($conn, $query); // 配置SQL语句,准备执⾏
if (!$stid) {
$e = oci_error($conn);
print htmlentities($e['message']);
exit;
}
$r = oci_execute($stid, OCI_DEFAULT); // 执⾏SQL。OCI_DEFAULT表⽰不要⾃动commit if(!$r) {
$e = oci_error($stid);
echo htmlentities($e['message']);
exit;
}
// 打印执⾏结果
print '<table border="1">';
while($row = oci_fetch_array($stid, OCI_RETURN_NULLS)) {
print '<tr>';
foreach($row as $item) {
print '<td>'.($item?htmlentities($item):' ').'</td>';
}
print '</tr>';
}
print '</table>';
oci_close($conn);
>oracle建立数据库连接
希望本⽂所述对⼤家的php程序设计有所帮助。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。