PHP连接远程oracle

1、在php.ini中开启 extension=php_oci8.dll extension=php_oci8_11g.dll(去掉分号即可)2、到http://www.oracle.com/technetwork/cn/topics/winsoft-085727.html下载对应的instantclient-basic-win32程序      注意:instantclient-baseic选择32位还是64位要看运行的php是32位还是64位而定,而不是系统位数3、下载后将你所下载的instantclient_11_2目录配置到系统环境变量中(D:apprtyrrtyinstantclient_11_2)4、重启apache用phpinfo便可看到oci8已开启说明:oci_connect函数中host代表oracle的IP地址 port代表oracle端口号 sid代表你的实例名    下例中AL32UTF8是表示你数据表中的字符集编码格式         (通过“select * from V$NLS_PARAMETERS;”可查询到)          查询结果中NLS_CHARACTERSET字段便表示你的oracle字符集格式 newcc 123456789表示用户名称及密码 测试代码: 
  $conn = oci_connect('newcc','123456789',"(DEscriptION=(ADDRESS=(PROTOCOL =TCP)(HOST=192.168.0.222)(PORT = 1521))(CONNECT_DATA =(SID=orcl)))","AL32UTF8");
        if (!$conn){
            echo "连接失败!";
            exit();
        }
        $sql = "SELECT BH,XM,GYDWNAME,ZYXZNAME,ZFZTNAME FROM CRIMINAL_BASE_INFO WHERE ROWNUM<6";  
        $ora = oci_parse($conn,$sql);  //编译sql语句 
        if (!$ora){
            echo "预编译失败!";
            exit();
        }
        //执行
        if (oci_execute($ora)){
            
             while(($row = oci_fetch_assoc($ora)) != false)  //取回结果
            {
                 echo "<pre>";
                 echo $row["BH"]."&nbsp;".$row["XM"]."<br/>";
                 echo "</pre>";
             } 
        }else {
            echo "执行失败!";
        } 
        if (!(oci_free_statement($ora)))
            echo "释放失败!";
        if (!oci_close($conn))
            echo "关闭失败!";
 

相关内容推荐