使用以下步骤从 Net.Data 宏访问 Oracle 数据库:
http://www.oracle.com/products/networking/html/stnd_sqlnet.html
tnsping oracle-instance-name
其中 oracle-instance-name 是您的 Net.Data 宏所访问的 Oracle 系统的名称。
如果您的 Web 服务器在系统权限下运行,那么您可能无法在 Windows NT 上验证 tnsping 函数。如果是这样的话,则跳过这一步。
SELECT * FROM tablename
如果您的 Web 服务器在系统权限下运行,那么您可能无法在 Windows NT 上进行验证。如果是这样的话,则跳过这一步。
ORACLE_SID=oracle-instance-name ORACLE_HOME=oracle-runtime-library-directory
ORACLE_SID=oracle-instance-name ORACLE_HOME=oracle-runtime-library-directory
%DEFINE LOGIN=user_ID@remote-oracle-instance-name %DEFINE PASSWORD=password
本地 Oracle 实例:
如果您只访问本地的 Oracle 实例,则不要指定远程 Oracle 实例的名称作为注册 用户 ID 的一部分,如下面的示例所示:
%DEFINE LOGIN=user_ID %DEFINE PASSWORD=passwordLive Connection:
如果您使用 Live Connection, 那么您可以在 Live Connection 配置文件中指定 LOGIN 和 PASSWORD, 尽管出于安全性的目的,我们建议您不要这么做。例如:
CLIETTE DTW_ORA:{ MIN_PROCESS=1 MAX_PROCESS=3 EXEC_NAME=./dtwora8 DATABASE=not_used LOGIN=userid@remote_oracle_instance_name PASSWORD=password }提示:不要对 Oracle 指定 DATABASE 变量。
#! /bin/sh echo "content-type; text/html echo echo "< html>< pre>" set echo "</pre><p> </p><pre>" tnsping oracle-instance-name echo
同样,您可以从 Net.Data 宏直接执行 tnsping, 如下面的示例所示:
%DEFINE testora = %exec "tnsping oracle-instance-name" %HTML (report){ < P>About to test Oracle access with tnsping. < hr> $(testora) < hr> < P>The Oracle test is complete. %}
疑难问题解决:
如果验证步骤失败,则请检查前面所有的步骤都是成功的,这可以通过验证以下项来实现:
示例:
完成了访问验证步骤之后,可以使用宏中的函数来调用 Oracle 语言环境,如下例所示:
%FUNCTION(DTW_ORA) STL1() { insert into $(tablename) (int1,int2) values (111,NULL) %}