当前位置:Gxlcms > PHP教程 > php如何读oracle

php如何读oracle

时间:2021-07-01 10:21:17 帮助过:24人阅读

RT,已经在php.ini中启用了extension=php_oci8_11g.dll ,可在phpinfo中看不到oci信息,请问还需进行其他什么配置吗?oracle11g的


回复讨论(解决方案)

需要安装 oracle11g 的客户端

因为自 oracle 9 起,他的客户端就单独发行了,php 已经没有必要将客户端捆绑进来
所以只提供了与客户端通讯的接口 php_oci8 和 php_oci8_11g
由于 oracle11g 的客户端做了很大的改动,因此才有 php_oci8_11g 与之连接,主要是为了使用 oracle 的新功能

需要安装 oracle11g 的客户端

因为自 oracle 9 起,他的客户端就单独发行了,php 已经没有必要将客户端捆绑进来
所以只提供了与客户端通讯的接口 php_oci8 和 php_oci8_11g
由于 oracle11g 的客户端做了很大的改动,因此才有 php_oci8_11g 与之连接,主要是为了使用 oracle 的新功能

谢谢这位大神,本人小白,基本是按着这篇文章安装的64位oracle
http://blog.sina.com.cn/s/blog_868ba3570101djuh.html
搞了32位的客户端,但是他提到的 tnsnames.ora 这个文件我在%Oracle_Home%\NETWORK\ADMIN下面没有找到。请问然后我该怎么办呢?

你看看这个 http://download.csdn.net/download/eisjmo/4362471

很长时间没有弄了,细节都记不清了
不过映像中只要 setup 就可以了,没有什么需要配置的

很长时间没有弄了,细节都记不清了
不过映像中只要 setup 就可以了,没有什么需要配置的


现在有了新情况,我简单测试下连接数据库,报 Warning: oci_connect(): ORA-12154: TNS:could not resolve the connect identifier specified in C:\xampp\htdocs\phpwork1\test.php on line 17
ORA-12154: TNS:could not resolve the connect identifier specified
环境变量也配了,不好使

贴出你的代码

贴出你的代码


';while($row = oci_fetch_array($stid, OCI_RETURN_NULLS)) {	print '';	foreach($row as $item) {		print ''.($item?htmlentities($item):' ').'';	}	print '';}print '';oci_close($conn);?>

就是php手册里的一段

你改用 PDO 方式

你改用 PDO 方式


谢谢大神,我用pdo返回差不多的信息。。。
SQLSTATE[42S02]: pdo_oci_handle_factory: ORA-12154: TNS:could not resolve the connect identifier specified (ext\pdo_oci\oci_driver.c:633)
代码
$tns="aaa";try{	$conn=new PDO("oci:dbname=".$tns, 'system', '123456');}catch(PDOException $e){	echo ($e->getMessage());}

此外为何我PDO_OCI下毛也没有呢 php.ini里已经启动了extension=php_pdo_oci.dll

$db = new PDO('oci:dbname=//机器名或ip:1521/实例名', '用户名', '口令');
$rs = $db->query('sql指令' );

$db = new PDO('oci:dbname=//机器名或ip:1521/实例名', '用户名', '口令');
$rs = $db->query('sql指令' );



成功了!谢谢大神耐心指教!!给你32个赞!!

人气教程排行