private const string sql_gcInsert = "insert into gc_outandin(id,idno,outtime,intime,deflag,re) values (&vid,&vidno,&vouttime,&vintime,&vdeflag,&vre)";        public int Insert(gc_outandinInfo gc_outandin)
        {
            gc_outandin.ID = getMaxid() + 1;
            OracleParameter[] parms ={
                new OracleParameter(PARM_ID,OracleType.Number),
                new OracleParameter(PARM_IDNO,OracleType.VarChar),
                new OracleParameter(PARM_OUTTIME,OracleType.DateTime),
                new OracleParameter(PARM_INTIME,OracleType.DateTime),
                new OracleParameter(PARM_DEFLAG,OracleType.VarChar),
                new OracleParameter(PARM_REMARK,OracleType.VarChar)
            };
            parms[0].Value = gc_outandin.ID;
            parms[1].Value = gc_outandin.IDNO;
            parms[2].Value = gc_outandin.OUTTIME;
            parms[3].Value = gc_outandin.INTIME;
            parms[4].Value = gc_outandin.DEFLAG;
            parms[5].Value = gc_outandin.REMARK;
            int torf = OracleHelper.ExecuteNonQuery(OracleHelper.orclConnectionString, CommandType.Text, sql, parms);
            return torf;
        }          public static int ExecuteNonQuery(string connectionString, CommandType cmdType, string cmdText, params OracleParameter[] commandParameters) {
            // Create a new Oracle command
            OracleCommand cmd = new OracleCommand();            //Create a connection
            using (OracleConnection connection = new OracleConnection(connectionString)) {                //Prepare the command
                PrepareCommand(cmd, connection, null, cmdType, cmdText, commandParameters);                //Execute the command
                int val = cmd.ExecuteNonQuery();
                cmd.Parameters.Clear();
                return val;
            }
        }ORA-01036: 變數名稱﹧號碼無效
datetime 類型的值如何傳遞呀

解决方案 »

  1.   

    DATE型字段就用DateTime或OracleClient OracleDateTime
      

  2.   

    数据库里相应的字段是什么类型的?把datetime 類型转换成和数据库字段类型一致就可以的
      

  3.   

    转一下别人的方案:
    .net编程时有时会遇到莫名其妙的ora-01036错误。具体原因一般分析如下:
    1、如错误介绍一样,你传入的参数和你语句中参数的顺序不同,或者树木不一致。
    2、名字过长,oracle要求列名<32字符(起这么长名字的人也够变态的)
    3、在声明中 new OracleParameter(PARM_NAME........)  其中PARM_NAME中不需要包含语句中的":"(补充一下,包含一般也不会有错误)以上就是一般情况的分析,还有几种特殊的情况:比如数据类型的问题,比如你小子没事干在后面多加了一个空格(我今天就这么无聊过,被郁闷了很久)
      

  4.   

    DateTime是没有问题的,出错的地方应该不是这个原因
      

  5.   

    ORA-01036: 變數名稱&#65127;號碼無效===========参数名不匹配?