--储存过程如下
create or replace procedure UpdateIBLocationId(Messages out varchar2,PIBName in varchar2)
as
msg varchar2(100);
begin
select ibcode into oldIBCode from p010b001.ib_recognize_declare where ibname=PIBName;
......
Messages := "成功! ";
end UpdateIBLocationId;
//C#调用如下,
cmd = new OracleCommand( "UpdateIBLocationId ", con);
cmd.CommandType = CommandType.StoredProcedure; p1 = new OracleParameter( "result ", OracleType.VarChar,500);
p1.Direction = System.Data.ParameterDirection.ReturnValue;
cmd.Parameters.Add(p1); p2 = new OracleParameter( "PIBName ", OracleType.VarChar, 20);
p2.Direction = System.Data.ParameterDirection.Input;
p2.Value = ibName[i]; cmd.Parameters.Add(p2);
try
{
con.Open();
cmd.ExecuteNonQuery();
//DataSet ds = new DataSet();
//IDbDataAdapter da = new System.Data.OracleClient.OracleDataAdapter(cmd);
//da.Fill(ds);
// Message +=ds.Tables[0] + " <br/> ------------------------------------------------------------ <br/> ";
}
finally
{
if (con != null)
{
con.Close();
}
} //调用报错
“/”应用程序中的服务器错误。
-------------------------------------------------------------------------------- ORA-06550: 第 1 行, 第 18 列:
PLS-00306: 调用 'UPDATEIBLOCATIONID ' 时参数个数或类型错误
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored 请问如何得到返回参数Messages 的值
create or replace procedure UpdateIBLocationId(Messages out varchar2,PIBName in varchar2)
as
msg varchar2(100);
begin
select ibcode into oldIBCode from p010b001.ib_recognize_declare where ibname=PIBName;
......
Messages := "成功! ";
end UpdateIBLocationId;
//C#调用如下,
cmd = new OracleCommand( "UpdateIBLocationId ", con);
cmd.CommandType = CommandType.StoredProcedure; p1 = new OracleParameter( "result ", OracleType.VarChar,500);
p1.Direction = System.Data.ParameterDirection.ReturnValue;
cmd.Parameters.Add(p1); p2 = new OracleParameter( "PIBName ", OracleType.VarChar, 20);
p2.Direction = System.Data.ParameterDirection.Input;
p2.Value = ibName[i]; cmd.Parameters.Add(p2);
try
{
con.Open();
cmd.ExecuteNonQuery();
//DataSet ds = new DataSet();
//IDbDataAdapter da = new System.Data.OracleClient.OracleDataAdapter(cmd);
//da.Fill(ds);
// Message +=ds.Tables[0] + " <br/> ------------------------------------------------------------ <br/> ";
}
finally
{
if (con != null)
{
con.Close();
}
} //调用报错
“/”应用程序中的服务器错误。
-------------------------------------------------------------------------------- ORA-06550: 第 1 行, 第 18 列:
PLS-00306: 调用 'UPDATEIBLOCATIONID ' 时参数个数或类型错误
ORA-06550: 第 1 行, 第 7 列:
PL/SQL: Statement ignored 请问如何得到返回参数Messages 的值
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货