我NET中定义 OracleParameter[] companyParams = {
new OracleParameter("USERNAME", OracleType.VarChar,20),
new OracleParameter("COMPANYNAME", OracleType.VarChar,200),
new OracleParameter("COMPANYTYPE", OracleType.Number,4),
new OracleParameter("MANAGEMENTADDR", OracleType.VarChar,100),
new OracleParameter("CALLINGS", OracleType.VarChar,50),
new OracleParameter("MANUFACTURE", OracleType.VarChar,100),
new OracleParameter("FLAG",OracleType.Number,4),
new OracleParameter("COMPANYID", OracleType.Number,4)};写过程 如下create or replace procedure SP_RONYEE_COMPANY_ADD
(
v_UserNAME in varchar2,
v_COMPANYNAME in varchar2,
v_COMPANYTYPE in Number,
v_MANAGEMENTADDR in varchar2,
v_CALLING in varchar2,
v_MANUFACTURE in varchar2,
v_FLAG in Number,
v_COMPANYID out Number
)
isbegin
INSERT INTO ronyee_company
(username,companyname,companytype,managementaddr,calling,manufacture,flag,companyID)
values
(''||v_username||'' ,
''||v_companyname||'' ,
v_COMPANYTYPE ,
''||v_managementaddr||'' ,
''||v_calling||'' ,
''||v_manufacture||'' ,
v_flag,
Seq_Company.nextVal);
--v_COMPANYID:= 123;
select Nvl(Max(companyID), 0) into v_COMPANYID from ronyee_company;
end SP_RONYEE_COMPANY_ADD;用下面代码测试 companyParams[0].Value ="aaaa";
companyParams[1].Value = "asdasd";
companyParams[2].Value = 1;
companyParams[3].Value = "1231231";
companyParams[4].Value = "1123123123";
companyParams[5].Value = "12312312321";
companyParams[6].Value = 0;
companyParams[7].Direction = ParameterDirection.Output;调用该过程的时候说类型错误,但我把数据直接用PLSQL调试的时候是对的.
应该如何改过程?谢谢了
new OracleParameter("USERNAME", OracleType.VarChar,20),
new OracleParameter("COMPANYNAME", OracleType.VarChar,200),
new OracleParameter("COMPANYTYPE", OracleType.Number,4),
new OracleParameter("MANAGEMENTADDR", OracleType.VarChar,100),
new OracleParameter("CALLINGS", OracleType.VarChar,50),
new OracleParameter("MANUFACTURE", OracleType.VarChar,100),
new OracleParameter("FLAG",OracleType.Number,4),
new OracleParameter("COMPANYID", OracleType.Number,4)};写过程 如下create or replace procedure SP_RONYEE_COMPANY_ADD
(
v_UserNAME in varchar2,
v_COMPANYNAME in varchar2,
v_COMPANYTYPE in Number,
v_MANAGEMENTADDR in varchar2,
v_CALLING in varchar2,
v_MANUFACTURE in varchar2,
v_FLAG in Number,
v_COMPANYID out Number
)
isbegin
INSERT INTO ronyee_company
(username,companyname,companytype,managementaddr,calling,manufacture,flag,companyID)
values
(''||v_username||'' ,
''||v_companyname||'' ,
v_COMPANYTYPE ,
''||v_managementaddr||'' ,
''||v_calling||'' ,
''||v_manufacture||'' ,
v_flag,
Seq_Company.nextVal);
--v_COMPANYID:= 123;
select Nvl(Max(companyID), 0) into v_COMPANYID from ronyee_company;
end SP_RONYEE_COMPANY_ADD;用下面代码测试 companyParams[0].Value ="aaaa";
companyParams[1].Value = "asdasd";
companyParams[2].Value = 1;
companyParams[3].Value = "1231231";
companyParams[4].Value = "1123123123";
companyParams[5].Value = "12312312321";
companyParams[6].Value = 0;
companyParams[7].Direction = ParameterDirection.Output;调用该过程的时候说类型错误,但我把数据直接用PLSQL调试的时候是对的.
应该如何改过程?谢谢了
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货