c# 操作oracle存储过程
折腾很久都没有正确
代码:
private void Exeproce(string struser,string procname,string tppartname,string strfilepath)
{
OracleParameter parename = new OracleParameter("tpname",OracleType.VarChar);
parename.Value = tppartname;
OracleParameter parapath = new OracleParameter("ora_ph", OracleType.VarChar);
parapath.Value = strfilepath;
OracleParameter[] para = new OracleParameter[] { parename, parapath };
OracelTool.storeprocdure(struser, procname, para);
}
public static void storeprocdure(string strcon, string strproc_name, OracleParameter[] para)
{
using (OracleConnection myCon = new OracleConnection(strcon))
{
myCon.Open();
OracleCommand mycmd = new OracleCommand();
mycmd.CommandType = CommandType.StoredProcedure;
mycmd.CommandText = strproc_name;
mycmd.Connection = myCon;
//foreach (OracleParameter par in para)
//{
// mycmd.Parameters.Add(par.ParameterName, par.OracleType);
// mycmd.Parameters[par.ParameterName].Value = par.Value;
//mycmd.Parameters.Add(par);
//}
mycmd.Parameters.AddRange(para);
mycmd.ExecuteNonQuery();
}
都不正确;
报错:
ORA-06550:第1行,第7列
pls-00306调用xxxx的参数个数或者类型错误
ORA-06550:第1行第7列
pl/sql:statement ignored