Siebel调用Oracle存储过程

 1 var psInput = TheApplication().NewPropertySet();
 2 var psOutput = TheApplication().NewPropertySet();
 3 var bsEAIProc = TheApplication().GetService("EAI ODBC Service");
 4 psInput.SetProperty(“ExtDBODBCDataSource”, “ODBCName”);
 5 psInput.SetProperty(“ExtDBPassword”, “SIEBEL”);
 6 psInput.SetProperty(“ExtDBUserName”, “SIEBEL”);
 7 psInput.SetProperty(“ExtDBTableOwner”, “SIEBEL”);
 8 psInput.SetProperty(“ProcedureName”, “ProcedureName”);
 9 psInput.SetProperty(“ProcedureArgument”, “productID”);
10 bsEAIProc.InvokeMethod("ExecuteProc", psInput, psOutput);
11 var sStatus = psOutput.GetProperty("Status");

 1 conn = COMCreateObject("ADODB.Connection");
 2 conStr = "Provider=OraOLEDB.Oracle;
 3 DataSource = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.0)(PORT = 1521))(CONNECT_DATA = (SERVICE_NAME = ORACLESERVICENAME)));
 4 User ID = "";
 5 Password = "";
 6 Persist Security Info = True ";
 7 conn.ConnectionString = conStr;
 8 conn.Open();
 9 rs = COMCreateObject("ADODB.Recordset");
10 adoCommand = COMCreateObject("ADODB.Command");
11 adoCommand.CommandType = 4;
12 adoCommand.CommandText = "siebel.ProcedureName"; //将CommandText为存储过程的名称。ProcedureName是存储过程名称
13 adoInputsParameters = adoCommand.CreateParameter("txtrowid", 200, 3, 40, "10011");
14 adoOutputsParameters = adoCommand.CreateParameter("srnum", 200, 3, 40, "10011");
15 adoCommand.Parameters.Append(adoInputsParameters);
16 adoCommand.Parameters.Append(adoOutputsParameters);
17 adoCommand.ActiveConnection = conn;
18 adoCommand.Execute();
19 conn.Close();

还有两个问题需要研究一下,Oracle Procedure Adapter和Oracle SQL Adapter,后期有结果分享。

时间: 2024-10-29 19:10:44

Siebel调用Oracle存储过程的相关文章

jdbc调用 oracle 存储过程操作

创建有参存储函数findEmpNameAndSal(编号),查询7902号员工的的姓名和月薪,[返回多个值,演示out的用法]当返回2个或多个值,必须使用out符号当返回1个值,就无需out符号 create or replace function findEmpNameAndSal(pempno in number,pename out varchar2) return numberas psal emp.sal%type;begin select ename,sal into pename,

C#调用 Oracle 存储过程样例代码

-- 建表CREATE TABLE sale_report (     sale_date DATE NOT NULL ,     sale_item VARCHAR(2) NOT NULL ,      sale_money DECIMAL(10,2) NOT NULL,      PRIMARY KEY(sale_date, sale_item)); -- 測试数据DECLAREv_begin_day DATE;v_end_day DATE;BEGIN v_begin_day := TO_D

在java中调用Oracle存储过程

在java中调用Oracle存储过程 本文介绍如何通过java来调用Oracle的存储过程 1. 编写存储过程 CREATE OR REPLACE PROCEDURE sp_pro3(sp_name VARCHAR2,sp_sal NUMBER ) IS BEGIN --根据用户名修改工资 UPDATE emp SET sal=sp_sal WHERE ename=sp_name; END; 引入jdbc6.jar,编写测试类Test.java package testOraclePro; im

asp.net调用oracle存储过程

oracle内的存储过程是通过游标返回结果集的 DataTable dt = new DataTable(); OracleParameter[] paras = new OracleParameter[5]; paras[0] = new OracleParameter("p_StartTime", OracleType.Char); paras[0].Value = StartTime; paras[1] = new OracleParameter("p_EndTime&

C#调用Oracle存储过程

C#调用Oracle存储过程的代码如下所示: 1 using System; 2 using System.Collections.Generic; 3 using System.Collections.ObjectModel; 4 using System.ComponentModel; 5 using System.Configuration; 6 using System.Data; 7 using System.Data.OracleClient; 8 using System.Draw

C#调用Oracle存储过程的方法

本文实例讲述了C#调用Oracle存储过程的方法.分享给大家供大家参考.具体实现方法如下: Oracle数据库代码如下: 代码如下: create or replace procedure proce_test(paramin in varchar2,paramout out varchar2,paraminout in out varchar2) as varparam varchar2(28); begin varparam:=paramin; paramout:=varparam|| pa

用java调用oracle存储过程总结(转)

//1.call+包名+存储过程名(传入.传出值用?) String str="{call SMSBUSINESS.deleteZhZMember(?,?,?)}"; //2.建立连接 Connection conn=null; conn=DriverManager.getConnection(); //3.使用java.sql.*类 CallableStatement cs=conn.prepareCall(str); //4.传入in值 cs.setInt(1,id); cs.se

java基础---->java调用oracle存储过程(转)

存储过程是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它.今天,我们就开始学习java中调用oracle的存储过程. java中调用oracle的存储过程 项目结构如下: 一. 在数据库创建存储过程的脚本,如果使用的是本地的oracle数据库,则需要开启服务:OracleOraDb11g_home1TNSListener和OracleServiceORCL.

java基础---->java调用oracle存储过程

存储过程是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它.今天,我们就开始学习java中调用oracle的存储过程. java中调用oracle的存储过程 项目结构如下: 一. 在数据库创建存储过程的脚本,如果使用的是本地的oracle数据库,则需要开启服务:OracleOraDb11g_home1TNSListener和OracleServiceORCL.