oracle 8
NUMBER   不能为空
VARCHAR2(20)
VARCHAR2(4)
NUMBER
VARCHAR2(100)
VARCHAR2(20)
VARCHAR2(20)
VARCHAR2(100)
DATE存储过程如下procedure SF_INS_DWHJ_P  V_YHBM   SF_DWHJ_T.YHBM%TYPE,
  V_fynd    SF_DWHJ_T.fynd%TYPE,
  V_HJRQ   SF_DWHJ_T.HJRQ%TYPE,
  V_HJJE   SF_DWHJ_T.HJJE%TYPE,
  V_HJYY   SF_DWHJ_T.HJYY%TYPE,
  V_PZR    SF_DWHJ_T.PZR%TYPE,
  V_CZY    SF_DWHJ_T.CZY%TYPE,
  V_RESULTOUT NUMBER--处理结果
) is
begin
   
  INSERT INTO SF_DWHJ_T
  (YHBM,FYND,HJRQ,HJJE,HJYY,PZR,CZY)
  VALUES
  (V_YHBM,V_FYND,V_HJRQ,V_HJJE,V_HJYY,V_PZR,V_CZY);   
  UPDATE SF_DWJS_T
  SET TJJE=TJJE+(V_HJJE),QFZE=QFZE-(V_HJJE)
  WHERE YHBM=V_YHBM AND CNQ=V_FYND;
    
  --增加日志信息
  INSERT INTO SF_CZRZ_T(CZSJ,CZLB,CZR,CZNR)
  VALUES(SYSDATE,'单位核减',V_CZY,V_YHBM||'于'||TO_CHAR(V_HJRQ,'YYYY-MM-DD')||'核减'||TO_CHAR(V_HJJE));
  
  COMMIT;
   
  V_RESULT:= 0;
  
  EXCEPTION
     WHEN OTHERS THEN
       ROLLBACK;
       V_RESULT:= 1;
end SF_INS_DWHJ_P; 调用代码如下:
                OleDbCommand firstCommand = new OleDbCommand("SF_INS_DWHJ_P");
                firstCommand.CommandType = CommandType.StoredProcedure;
                firstCommand.Parameters.Clear();
                OleDbParameter param = firstCommand.Parameters.Add("V_YHlBM", OleDbType.VarChar,20);                param = firstCommand.Parameters.Add("V_YHBM", OleDbType.VarChar, 20);
                param.Value = "dfsa";
                param = firstCommand.Parameters.Add("V_fynd", OleDbType.VarChar, 20);
                param.Value = "dfsa";                param = firstCommand.Parameters.Add("V_HJYY", OleDbType.VarChar, 20);
                param.Value = "dfsa";
                param = firstCommand.Parameters.Add("V_PZR", OleDbType.VarChar, 20);
                param.Value = "dfsa";
                param = firstCommand.Parameters.Add("V_CZY", OleDbType.VarChar, 20);
                param.Value = "dfsa";                param = firstCommand.Parameters.Add("V_HJJE", OleDbType.Numeric);
                param.Value = 2;
                param = firstCommand.Parameters.Add("V_HJRQ", OleDbType.DBDate);
                param.Value = System.DateTime.Today;                param.Direction = ParameterDirection.Output;
                OleDbConnection Conn = new OleDbConnection("*******");
                Conn.Open();
                firstCommand.Connection = Conn;
                bz.Text = firstCommand.CommandText;
                bz.Text = firstCommand.Parameters.ToString();
                firstCommand.ExecuteNonQuery();提示错误
ORA-01841: (全)年度值必须介于 -4713 和 +9999 之间,且不为 0
ORA-06512: 在line 1