APACHE PHP5 ORACLE设置
在windows 下配置PHP使用ORACLE数据库要点
在window下,经常用apache + PHP 来做应用平台,但是如果使用oracle做后台数据库,但又没有安装有oracle客户端,下面的配置可以参考
1、在没有安装oracle的机器上,PHP无法加载php_oci8.dll模块,原因是php_oci8.dll依赖的相关组件没有找到。
你正确设置了extension_dir = "C:\Apache\php\ext\"
并且打开了 extension=php_oci8.dll
但是查看apache的日志(在logs/error.log中),发现类似的错误
PHP Warning: PHP Startup: Unable to load dynamic library 'C:\\Apache\\php\\ext\\php_oci8.dll' - \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3\r\n in Unknown on line 0
那就会是上面描述的情况,使用oracle8扩展需要 Oracle 客户端库。Windows 用户需要至少版本号为 10 的库才能使用 php_oci8.dll。
到这个地址下载需要的版本 http://www.oracle.com/technology/tech/oci/instantclient/index.html
不过,下载需要一个注册才可以,如果你已经注册过,那么登录就可以了,你下载后是一个zip包,只需把那个包解压到一个目录中
比如 c:\oracle_client\ 那么,把这个地址加到 path中即可
但是这样还不够,还需要设置 TNS_ADMIN 这个变量,把这个变量的值设置为 tnsnames.ora文件所在的目录即可。
下面是tnsnames.ora的例子
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.102)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orcl)
)
)
下面是一个测试例子
<?php
$connection = oci_connect("hr", "pass","orcl","UTF8");
$query = "SELECT * from user_tables";
$statement = oci_parse ($connection, $query);
oci_execute ($statement);
// 打印执行结果
print '<table border="1">';
while($row = oci_fetch_array($statement, OCI_NUM)) {
 
相关文档:
下载解压了Oracle SQL Developer工具,运行时,启动不了,报错信息如下:
---------------------------
Unable to create an instance of the Java Virtual Machine
Located at path:
<SQLDEVELOPER>\jdk\jre\bin\client\jvm.dll
---------------------------
是JVM参数设置的问题,我的解决方案如下:
<SQ ......
有一个开源项目提供将PHP代码转换成Scala代码的功能,该项目的网站是 http://code.google.com/p/php-to-scala-migration-helper/。
In short, php-to-scala converts PHP code to clean, maintainable Scala source code. To cut to the chase, see ConversionExamples, or the feature-by-feature DesignD ......
用Qt开发Oracle程序时,常会遇到QOCI驱动问题,主要表现为程序运行时出现下面的错误。
QOCI driver not loaded
available drivers: QSQLITE QODBC3 QODBC
这说明没有安装Qt支持Oracle的驱动。
.
要想避免这个问题,第一种方法是使用效率低下并且费事的ODBC;第二种方法就是安装QOCI驱动咯~
.
要说一下的是:QOCI在qt ......
oracle9i卸载
1,在服务中停止oracle的所有服务
2,在程序了卸装所有Oracle产品,(但Universal Installer本身不能被删除)
3,删除注册表:
(1)运行regedit选择HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE,删除这个项
(2)选择HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Oracle,删除这个项.
(3),选择HKEY_LOCAL_MACHI ......
Flashback 技术是以Undo segment中的内容为基础的, 因此受限于UNDO_RETENTON参数。要使用flashback 的特性,必须启用自动撤销管理表空间。
在Oracle 10g中, Flash back家族分为以下成员: Flashback Database, Flashback Drop,Flashback Query(分Flashback Query,Flashback Version Query, Flashback Transaction Que ......