在对 Net.Data 语言环境修改配置变量和 ENVIRONMENT 配置语句之后, 要想使以下语言环境能够正确工作,则还需要一些额外的设置。以下章节描述设置语言环境所必需的步骤:
如果“现场连接”用来管理与“Java 虚拟机”的连接,则在可以从宏调用函数之前,需要对 Java 语言环境进行一些附加设置:
java -classpath %CLASSPATH%;C:\DB2WWW\Javaclas dtw_samp %1 %2 %3 %4 %5 %6
CLIETTE DTW_JAVAPPS{ MIN_PROCESS=1 MAX_PROCESS=1 EXEC_NAME=launchjv.bat }
启动“Net.Data 连接管理器”时,Net.Data 将启动配置文件中指定的 Java cliette。 cliette 变得可用之后就从您的 Net.Data 宏应用程序处理 Java 语言环境请求。
ENVIRONMENT DTW_JAVAPPS ( OUT RETURN_CODE ) CLIETTE "DTW_JAVAPPS"
使用以下步骤从 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 实例的名称作为登录用户标识的一部分,如下面的示例所示:
%DEFINE LOGIN=user_ID %DEFINE PASSWORD=password现场连接:
如果您使用“现场连接”, 那么您可以在“现场连接”配置文件中指定 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) %}