这个简单得很。
php连接oracle8i可以用php的OCI函数接口,
具体的使用:
<?php
$conn = OCILogon("scott","tiger","你的oracle数据库名字");
$stmt = OCIParse($conn,"select empno, ename from emp");
/* 使用 OCIDefineByName 要在执行 OCIExecute 前 */
OCIDefineByName($stmt,"EMPNO",&$empno);
OCIDefineByName($stmt,"ENAME",&$ename);
OCIExecute($stmt);
while (OCIFetch($stmt)) {
echo "empno:".$empno."\n";
echo "ename:".$ename."\n";
}
OCIFreeStatement($stmt);
OCILogoff($conn);
?>
php连接oracle8i可以用php的OCI函数接口,
具体的使用:
<?php
$conn = OCILogon("scott","tiger","你的oracle数据库名字");
$stmt = OCIParse($conn,"select empno, ename from emp");
/* 使用 OCIDefineByName 要在执行 OCIExecute 前 */
OCIDefineByName($stmt,"EMPNO",&$empno);
OCIDefineByName($stmt,"ENAME",&$ename);
OCIExecute($stmt);
while (OCIFetch($stmt)) {
echo "empno:".$empno."\n";
echo "ename:".$ename."\n";
}
OCIFreeStatement($stmt);
OCILogoff($conn);
?>
在php.ini的Windows Extensions段修改成
extension_dir = "所要加载的dll的文件路径" (如c:\php\extensions)
extension=php_oci8.dll
extension=php_oracle.dll
第二步:
iis中设置isapi详细请看http://www.oradb.net/setup/phpora_004.htm
我装的是oracle8.0.5客户端,连到oracle9i的服务器,
我在客户端用sql plus访问oracle9i都是成功,如下
用户名称:fast
口令:fast
主机字符串(service name):vplan_client但在php代码中
<?
$conn = OCILogon("fast","fast","vplan_client");
...
?>
出以下错误:
Warning: _oci_open_server: ORA-12154: TNS:无法处理服务名 什么原因?
用一下代码连,<?php
$conn = OCILogon("cinmsiii","cinmsiii","(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.202)(PORT = 1521))(CONNECT_DATA = (SID = unicom)))");
//$conn=OCILogon("cinmsiii","cinmsiii","cinms");如果oracle客户端是8.1.6i的话可以这样用,参数照上 if($conn!=false)
{
echo "ok";
OCILogoff($conn);
}
else
echo "false";
?>
可是我在PHPinfo那里就出错了,无法加载那两个库
我再好好重做一遍看看
用一下代码连,<?php
$conn = OCILogon("cinmsiii","cinmsiii","(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.202)(PORT = 1521))(CONNECT_DATA = (SID = unicom)))");
//$conn=OCILogon("cinmsiii","cinmsiii","cinms");如果oracle客户端是8.1.6i的话可以这样用,参数照上 if($conn!=false)
{
echo "ok";
OCILogoff($conn);
}
else
echo "false";
?>
可是我在PHPinfo那里就出错了,无法加载那两个库
我再好好重做一遍看看
知道哪里有php操作oracle数据库的教材么?懒得在各个论坛一篇一篇的翻了