这是一个公安部提供的  drv_interface.write_km2(string lsh,string sfzmhm,string kscx,datetime ksrq,integer kscj,integer kscs,string ksy1,string ksy2,string jbr,string zt,string sn,integer res,string err) 
lsh 流水号\ sfzmhm 身份证\kscx 考试车型\ksrq 考试日期\kscj 考试成绩\kscs考试次数\ksy1监考员1\ksy2 监考员2\jbr 经办人\zt 考试结果 \sn 考试认证码 \res 返回值 \err错误描述public struct UpdataStruct 
    { 
        public string arg_Lsh;//流水号 
        public string  SFZHM;//身份证 
        public string KSCX;//考试车型 
        public DateTime arg_Ksrq;//考试日期 
        public int arg_Kscj;// 考试成绩 
        public int arg_Kscs;// 考试次数 
        public string arg_Ksy1;// 考试员 
        public string arg_Ksy2;// 考试员 
        public string Zt;//考试状态 
        public string arg_Sn;// 序列号,与原接口序列号一致 
        public int arg_Res;// 返回结果 
        public string arg_Err;// 错误描述 
    
    } OracleParameter[] parameters ={ new OracleParameter("lsh",OracleType.VarChar,11), 
                        new OracleParameter("sfzmhm",OracleType.VarChar,18), 
                        new OracleParameter("kscx",OracleType.VarChar,2), 
                        new OracleParameter("ksrq",OracleType.DateTime,8), 
                        new OracleParameter("kscj",OracleType.Int16,3), 
                        new OracleParameter("kscs",OracleType.Int16,2), 
                        new OracleParameter("ksy1",OracleType.VarChar,30), 
                        new OracleParameter("ksy2",OracleType.VarChar,30), 
                        new OracleParameter("jbr",OracleType.VarChar,30), 
                        new OracleParameter("zt",OracleType.VarChar,1), 
                        new OracleParameter("sn",OracleType.VarChar,32), 
                        new OracleParameter("res",OracleType.Int16,1), 
                        new OracleParameter("err",OracleType.VarChar,50)}; 
                parameters[0].Value = UpdataS.arg_Lsh; 
                parameters[1].Value = UpdataS.SFZHM; 
                parameters[2].Value = UpdataS.KSCX; 
                parameters[3].Value = UpdataS.arg_Ksrq; 
                parameters[4].Value = UpdataS.arg_Kscj; 
                parameters[5].Value = UpdataS.arg_Kscs; 
                parameters[6].Value = UpdataS.arg_Ksy1; 
                parameters[7].Value = UpdataS.arg_Ksy2; 
                parameters[8].Value = "王青博"; 
                parameters[9].Value = UpdataS.Zt; 
                parameters[10].Value = UpdataS.arg_Sn;                 parameters[0].Direction = ParameterDirection.Input; 
                parameters[1].Direction = ParameterDirection.Input; 
                parameters[2].Direction = ParameterDirection.Input; 
                parameters[3].Direction = ParameterDirection.Input; 
                parameters[4].Direction = ParameterDirection.Input; 
                parameters[5].Direction = ParameterDirection.Input; 
                parameters[6].Direction = ParameterDirection.Input; 
                parameters[7].Direction = ParameterDirection.Input; 
                parameters[8].Direction = ParameterDirection.Input; 
                parameters[9].Direction = ParameterDirection.Input; 
                parameters[10].Direction = ParameterDirection.Input; 
                parameters[11].Direction = ParameterDirection.Output; 
                parameters[12].Direction = ParameterDirection.Output; 
                string slq = "DRV_ADMIN.DRV_INTERFACE.WRITE_KM2"; 
                Oracle_DataBC.CreateQueryCommand(slq, parameters); 
  public void CreateQueryCommand(string procName,  OracleParameter[] prams) 
        { 
            OracleCommand cmd; 
            Open(); 
            try 
            { 
                cmd = new OracleCommand(procName, orl_con); 
                cmd.CommandType = CommandType.StoredProcedure;                 foreach (OracleParameter parameter in prams) 
                { 
                    cmd.Parameters.Add(parameter); 
                } 
                cmd.ExecuteNonQuery(); 
            } 
            catch (Exception e) 
            { 
                throw (e); 
            } 
            finally 
            { 
                this.Close(); 
            }         } 
错误信息 
09051576086*370303199003043517*C1*2009-8-15 10:44:40*80*1*唐丽霞*武斌*1 
System.Data.OracleClient.OracleException: ORA-06550: line 1, column 7: 
PLS-00306: wrong number or types of arguments in call to 'WRITE_KM2' 
ORA-06550: line 1, column 7: 
PL/SQL: Statement ignored   at DataDao.DataBaseClass.CreateQueryCommand(String procName, OracleParameter[]& prams) 
  at DataDao.UpdateData.UpOracleData(UpdataStruct UpdataS, String& errorTxt)