I want to update my date column with the format as dd-mm-yy
. And in my database the column is of date
datatype. So while Updating I am sending data as
05-12-2017
but getting error as
ORA-01843: not a valid month
in my stored procedure I am sending it as
HOTO_ACCEPTENCE_DATE = TO_DATE(PHOTO_ACCEPTENCE_DATE, 'dd-m-yy'),
My full procedure:
PROCEDURE UPD_WF_BY_FIBER_ENG
(
PJOB_PROGRESS_ID IN TBL_FIBER_INV_JOB_PROGRESS.JOB_PROGRESS_ID%TYPE,
PSTATUS_ID IN TBL_FIBER_INV_JOB_PROGRESS.STATUS_ID%TYPE,
--PLIT_OFFERED_LENGTH IN TBL_FIBER_INV_JOB_PROGRESS.LIT_OFFERED_LENGTH%TYPE,
PHOTO_ACTUAL_LENGTH IN TBL_FIBER_INV_JOB_PROGRESS.HOTO_ACTUAL_LENGTH%TYPE,
PLIT_ACTUAL_LENGTH IN TBL_FIBER_INV_JOB_PROGRESS.LIT_ACTUAL_LENGTH%TYPE,
PHOTO_ACCEPTENCE_DATE IN TBL_FIBER_INV_JOB_PROGRESS.HOTO_ACCEPTENCE_DATE%TYPE,
PLIT_ACCEPTENCE_DATE IN TBL_FIBER_INV_JOB_PROGRESS.LIT_ACCEPTENCE_DATE%TYPE,
PAPPROVED_BY IN TBL_FIBER_INV_JOB_PROGRESS.APPROVED_BY%TYPE,
PREJECTED_BY IN TBL_FIBER_INV_JOB_PROGRESS.REJECTED_BY%TYPE,
PAPPROV_REJECT_REMARK IN TBL_FIBER_INV_JOB_PROGRESS.APPROV_REJECT_REMARK%TYPE,
PMODIFIED_BY IN TBL_FIBER_INV_JOB_PROGRESS.MODIFIED_BY%TYPE,
PUMS_GROUP_ASS_BY_ID IN TBL_FIBER_INV_JOB_PROGRESS.UMS_GROUP_ASS_BY_ID%TYPE,
PUMS_GROUP_ASS_BY_NAME IN TBL_FIBER_INV_JOB_PROGRESS.UMS_GROUP_ASS_BY_NAME%TYPE,
PUMS_GROUP_ASS_TO_ID IN TBL_FIBER_INV_JOB_PROGRESS.UMS_GROUP_ASS_TO_ID%TYPE,
PUMS_GROUP_ASS_TO_NAME IN TBL_FIBER_INV_JOB_PROGRESS.UMS_GROUP_ASS_TO_NAME%TYPE,
PISABDMISSING IN TBL_FIBER_INV_JOB_PROGRESS.ISABDMISSING%TYPE,
--PSPVENDORXML IN XMLTYPE,
POUTMSG OUT NVARCHAR2
)
AS
VCNTSPVENCNT NUMBER :=0;
BEGIN
UPDATE TBL_FIBER_INV_JOB_PROGRESS
SET STATUS_ID = PSTATUS_ID,
-- LIT_OFFERED_LENGTH = PLIT_OFFERED_LENGTH,
HOTO_ACTUAL_LENGTH = PHOTO_ACTUAL_LENGTH,
LIT_ACTUAL_LENGTH = PLIT_ACTUAL_LENGTH,
HOTO_ACCEPTENCE_DATE = TO_DATE(PHOTO_ACCEPTENCE_DATE, 'DD-MM-YY'),
LIT_ACCEPTENCE_DATE = TO_DATE(PLIT_ACCEPTENCE_DATE, 'DD-MM-YY'),
APPROVED_BY = PAPPROVED_BY,
APPROVED_DATE = DECODE(PAPPROVED_BY,NULL,NULL,SYSDATE),
REJECTED_BY = PREJECTED_BY,
REJECTED_DATE = DECODE(PREJECTED_BY,NULL,NULL,SYSDATE),
APPROV_REJECT_REMARK = PAPPROV_REJECT_REMARK,
MODIFIED_BY = PMODIFIED_BY,
MODIFIED_DATE = SYSDATE,
UMS_GROUP_ASS_BY_ID = PUMS_GROUP_ASS_BY_ID,
UMS_GROUP_ASS_BY_NAME = PUMS_GROUP_ASS_BY_NAME,
UMS_GROUP_ASS_TO_ID = PUMS_GROUP_ASS_TO_ID,
UMS_GROUP_ASS_TO_NAME = PUMS_GROUP_ASS_TO_NAME,
ISABDMISSING = PISABDMISSING
WHERE JOB_PROGRESS_ID = PJOB_PROGRESS_ID;
update
try
{
DBObject ObjDBObject = new DBObject(strConnectionString);
string strProcedureName = strPackageName + ".UPD_WF_BY_FIBER_ENG";
List<OracleParameter> lstParameters = new List<OracleParameter>();
OracleParameter ObjOracleParameter = new OracleParameter("PJOB_PROGRESS_ID", FiberDataInsertion.PROG_ID);
OracleParameter ObjOracleParameter1 = new OracleParameter("PSTATUS_ID", 1);
OracleParameter ObjOracleParameter2 = new OracleParameter("PHOTO_ACTUAL_LENGTH", FiberDataInsertion.HOTO_ACTUAL_LENGTH);
OracleParameter ObjOracleParameter3 = new OracleParameter("PLIT_ACTUAL_LENGTH", FiberDataInsertion.LIT_ACTUAL_LENGTH);
OracleParameter ObjOracleParameter4 = new OracleParameter("PHOTO_ACCEPTENCE_DATE", FiberDataInsertion.HOTO_ACCP_DATE);
OracleParameter ObjOracleParameter5 = new OracleParameter("PLIT_ACCEPTENCE_DATE", FiberDataInsertion.LIT_ACCP_DATE);
OracleParameter ObjOracleParameter6 = new OracleParameter("PAPPROVED_BY", "NADEEM5.KHAN");
OracleParameter ObjOracleParameter7 = new OracleParameter("PREJECTED_BY", "DB");
OracleParameter ObjOracleParameter8 = new OracleParameter("PAPPROV_REJECT_REMARK", "this is test");
OracleParameter ObjOracleParameter9 = new OracleParameter("PMODIFIED_BY", FiberDataInsertion.MODIFIED_BY);
OracleParameter ObjOracleParameter10 = new OracleParameter("PUMS_GROUP_ASS_BY_ID", FiberDataInsertion.UMS_GROUP_ASS_BY_ID);
OracleParameter ObjOracleParameter11 = new OracleParameter("PUMS_GROUP_ASS_BY_NAME", FiberDataInsertion.UMS_GROUP_ASS_BY_NAME);
OracleParameter ObjOracleParameter12 = new OracleParameter("PUMS_GROUP_ASS_TO_ID", FiberDataInsertion.UMS_GROUP_ASS_TO_ID);
OracleParameter ObjOracleParameter13 = new OracleParameter("PUMS_GROUP_ASS_TO_NAME", FiberDataInsertion.UMS_GROUP_ASS_TO_NAME);
OracleParameter ObjOracleParameter14 = new OracleParameter("PISABDMISSING", FiberDataInsertion.MISS_ASBUILT);
OracleParameter ObjOracleParameter15 = new OracleParameter
{
ParameterName = "POUTMSG",
Size = 500,
OracleDbType = OracleDbType.NVarchar2,
Direction = ParameterDirection.Output
};
lstParameters.Add(ObjOracleParameter);
lstParameters.Add(ObjOracleParameter1);
lstParameters.Add(ObjOracleParameter2);
lstParameters.Add(ObjOracleParameter3);
lstParameters.Add(ObjOracleParameter4);
lstParameters.Add(ObjOracleParameter5);
lstParameters.Add(ObjOracleParameter6);
lstParameters.Add(ObjOracleParameter7);
lstParameters.Add(ObjOracleParameter8);
lstParameters.Add(ObjOracleParameter9);
lstParameters.Add(ObjOracleParameter10);
lstParameters.Add(ObjOracleParameter11);
lstParameters.Add(ObjOracleParameter12);
lstParameters.Add(ObjOracleParameter13);
lstParameters.Add(ObjOracleParameter14);
lstParameters.Add(ObjOracleParameter15);
strMessage = ObjDBObject.ExecuteNonQuery(strProcedureName, lstParameters);
}
catch (Exception)
{
throw;
}
return strMessage;
Also the error details
at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure, Boolean bCheck)
at Oracle.DataAccess.Client.OracleException.HandleError(Int32 errCode, OracleConnection conn, String procedure, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, Boolean bCheck)
at Oracle.DataAccess.Client.OracleCommand.ExecuteNonQuery()
at FiberInventoryPortal.Models.DAL.DBObject.ExecuteNonQuery(String strProcedureName, List
1 lstParameters) in d:\Nadeem\FiberInventory_214\FiberInventoryPortal\FiberInventoryPortal\Models\DAL\DBObject.cs:line 114`