我正在尝试执行insert语句,但是当我尝试执行命令时出现错误:
ORA-00984:此处不允许列
当我打印出语句以手动测试它时,成功插入行。我想知道是否有人能够发现我错过了解决这个错误或者自己跟踪和解决这个问题的简单方法。
SQL语句:
Insert into HP_PRINTING_MSG_TBL(SOFTWARE_VERSION, SPEC_VERSION, SOURCE, MESSAGE_NAME, DIAGNOSTIC_JOB_ID,EXTERNAL_JOB_ID, DISPLAY_JOB_NAME, JOB_TYPE, SUBMIT_NUMBER, IS_MAKE_READY,JOB_SUBMISSION_ID, LAST_STATUS, LAST_STATUS_TIMESTAMP, JOB_SOURCE, QUANTITY,FRAME_SORT_ORDER, INTERLEAVE_PATTERN, FRAMES_PER_COPY, QUEUE_LOCATION, STOP_AFTER_JOB,REQUIRE_CONTIGUOUS_COPIES, RESUME_MODE, SEPARATE_AFTER_JOB, QUALITY_MODE_REQUESTED, QUALITY_MODE_USED,ACTUAL_PRESS, PRESS_SERIAL, PRESS_PROFILE_NAME, FINISHING_RUN_OUT_FEET, SIDE_A_FEET,SIDE_B_FEET, CHIPOUT_LENGTH_INCHES, SIDE_A, SIDE_B, SIDE_A2,SIDE_B3, SIDE_A4, SIDE_B5, CHIPOUT_PATTERN, SIDE_A6,SIDE_B7, SPEEDBASEDCOLORREDUCTIONS, FIXED_CHIPOUT_ENABLED, FIXED_CHIPOUT_SIZE_IN, TYPE,PAPER_PROFILE_NAME, FINISHING_TYPE, FILES, CURRENT_COPY, COPIES_PRINTED_OK,COPIES_PRINTED_ERROR, ACTUAL_LINEAR_FEET_USED, FRAMES_PRINTED_OK, FRAMES_PRINTED_ERROR, FRAMES_PRINTED_OK8,FRAMES_PRINTED_ERROR9, UNITS, FIXER, BLACK, CYAN, MAGENTA,YELLOW, MICR, FIXER10, BLACK11, CYAN12,MAGENTA13, YELLOW14, MICR15, COPIES_WITH_ERRORS, FRAME_INCHES_ALONG_WEB,FRAME_INCHES_ACROSS_WEB, SEQUENCE, START_TIMESTAMP, SEQUENCE16, END_TIMESTAMP,CUSTOMER_JOB_ID)
values( pSOFTWARE_VERSION, pSPEC_VERSION, pSOURCE, pMESSAGE_NAME, pDIAGNOSTIC_JOB_ID, pEXTERNAL_JOB_ID, pDISPLAY_JOB_NAME, pJOB_TYPE, pSUBMIT_NUMBER, pIS_MAKE_READY, pJOB_SUBMISSION_ID, pLAST_STATUS, pLAST_STATUS_TIMESTAMP, pJOB_SOURCE, pQUANTITY, pFRAME_SORT_ORDER, pINTERLEAVE_PATTERN, pFRAMES_PER_COPY, pQUEUE_LOCATION, pSTOP_AFTER_JOB, pREQUIRE_CONTIGUOUS_COPIES, pRESUME_MODE, pSEPARATE_AFTER_JOB, pQUALITY_MODE_REQUESTED, pQUALITY_MODE_USED, pACTUAL_PRESS, pPRESS_SERIAL, pPRESS_PROFILE_NAME, pFINISHING_RUN_OUT_FEET, pSIDE_A_FEET, pSIDE_B_FEET, pCHIPOUT_LENGTH_INCHES, pSIDE_A, pSIDE_B, pSIDE_A2, pSIDE_B3, pSIDE_A4, pSIDE_B5, pCHIPOUT_PATTERN, pSIDE_A6, pSIDE_B7, pSPEEDBASEDCOLORREDUCTIONS, pFIXED_CHIPOUT_ENABLED, pFIXED_CHIPOUT_SIZE_IN, pTYPE, pPAPER_PROFILE_NAME, pFINISHING_TYPE, pFILES, pCURRENT_COPY, pCOPIES_PRINTED_OK, pCOPIES_PRINTED_ERROR, pACTUAL_LINEAR_FEET_USED, pFRAMES_PRINTED_OK, pFRAMES_PRINTED_ERROR, pFRAMES_PRINTED_OK8, pFRAMES_PRINTED_ERROR9, pUNITS, pFIXER, pBLACK, pCYAN, pMAGENTA, pYELLOW, pMICR, pFIXER10, pBLACK11, pCYAN12, pMAGENTA13, pYELLOW14, pMICR15, pCOPIES_WITH_ERRORS, pFRAME_INCHES_ALONG_WEB, pFRAME_INCHES_ACROSS_WEB, pSEQUENCE, pSTART_TIMESTAMP, pSEQUENCE16, pEND_TIMESTAMP, pCUSTOMER_JOB_ID)
C#执行:
using (OracleCommand cmd = new OracleCommand(sqlStmt, conn))
{
cmd.Transaction = tx;
cmd.BindByName = true;
cmd.Parameters.Add("pSOFTWARE_VERSION", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.softwareversion) ? (object)DBNull.Value : parsedFile.softwareversion;
cmd.Parameters.Add("pSPEC_VERSION", OracleDbType.Int32).Value = util.IsNull(parsedFile.specversion) ? (object)DBNull.Value : parsedFile.specversion;
cmd.Parameters.Add("pSOURCE", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.source) ? (object)DBNull.Value : parsedFile.source;
cmd.Parameters.Add("pMESSAGE_NAME", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.messagename) ? (object)DBNull.Value : parsedFile.messagename;
cmd.Parameters.Add("pDIAGNOSTIC_JOB_ID", OracleDbType.NVarchar2).Value = (object)DBNull.Value;
cmd.Parameters.Add("pEXTERNAL_JOB_ID", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.externaljobid) ? (object)DBNull.Value : parsedFile.externaljobid;
cmd.Parameters.Add("pDISPLAY_JOB_NAME", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.displayjobname) ? (object)DBNull.Value : parsedFile.displayjobname;
cmd.Parameters.Add("pJOB_TYPE", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.jobtype) ? (object)DBNull.Value : parsedFile.jobtype;
cmd.Parameters.Add("pSUBMIT_NUMBER", OracleDbType.Int32).Value = util.IsNull(parsedFile.submitnumber) ? (object)DBNull.Value : parsedFile.submitnumber;
cmd.Parameters.Add("pIS_MAKE_READY", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.ismakeready) ? (object)DBNull.Value : parsedFile.ismakeready;
cmd.Parameters.Add("pJOB_SUBMISSION_ID", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.jobsubmissionid) ? (object)DBNull.Value : parsedFile.jobsubmissionid;
cmd.Parameters.Add("pLAST_STATUS", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.laststatus) ? (object)DBNull.Value : parsedFile.laststatus;
cmd.Parameters.Add("pLAST_STATUS_TIMESTAMP", OracleDbType.TimeStamp).Value = util.IsNull(parsedFile.laststatustimestamp) ? (object)DBNull.Value : Convert.ToDateTime(parsedFile.laststatustimestamp);
cmd.Parameters.Add("pJOB_SOURCE", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.jobsource) ? (object)DBNull.Value : parsedFile.jobsource;
cmd.Parameters.Add("pQUANTITY", OracleDbType.Int32).Value = util.IsNull(parsedFile.quantity) ? (object)DBNull.Value : parsedFile.quantity;
cmd.Parameters.Add("pFRAME_SORT_ORDER", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.framesortorder) ? (object)DBNull.Value : parsedFile.framesortorder;
cmd.Parameters.Add("pINTERLEAVE_PATTERN", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.interleavepattern) ? (object)DBNull.Value : parsedFile.interleavepattern;
cmd.Parameters.Add("pFRAMES_PER_COPY", OracleDbType.Int32).Value = util.IsNull(parsedFile.framespercopy) ? (object)DBNull.Value : parsedFile.framespercopy;
cmd.Parameters.Add("pQUEUE_LOCATION", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.queuelocation) ? (object)DBNull.Value : parsedFile.queuelocation;
cmd.Parameters.Add("pSTOP_AFTER_JOB", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.stopafterjob) ? (object)DBNull.Value : parsedFile.stopafterjob;
cmd.Parameters.Add("pREQUIRE_CONTIGUOUS_COPIES", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.requirecontiguouscopies) ? (object)DBNull.Value : parsedFile.requirecontiguouscopies;
cmd.Parameters.Add("pRESUME_MODE", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.resumemode) ? (object)DBNull.Value : parsedFile.resumemode;
cmd.Parameters.Add("pSEPARATE_AFTER_JOB", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.separateafterjob) ? (object)DBNull.Value : parsedFile.separateafterjob;
cmd.Parameters.Add("pQUALITY_MODE_REQUESTED", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.qualitymoderequested) ? (object)DBNull.Value : parsedFile.qualitymoderequested;
cmd.Parameters.Add("pQUALITY_MODE_USED", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.qualitymodeused) ? (object)DBNull.Value : parsedFile.qualitymodeused;
cmd.Parameters.Add("pACTUAL_PRESS", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.actualpress) ? (object)DBNull.Value : parsedFile.actualpress;
cmd.Parameters.Add("pPRESS_SERIAL", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.pressserial) ? (object)DBNull.Value : parsedFile.pressserial;
cmd.Parameters.Add("pPRESS_PROFILE_NAME", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.pressprofilename) ? (object)DBNull.Value : parsedFile.pressprofilename;
cmd.Parameters.Add("pFINISHING_RUN_OUT_FEET", OracleDbType.Decimal).Value = util.IsNull(parsedFile.finishingrunoutfeet) ? (object)DBNull.Value : parsedFile.finishingrunoutfeet;
cmd.Parameters.Add("pSIDE_A_FEET", OracleDbType.Decimal).Value = util.IsNull(parsedFile.recoverysideafeet) ? (object)DBNull.Value : parsedFile.recoverysideafeet;
cmd.Parameters.Add("pSIDE_B_FEET", OracleDbType.Decimal).Value = util.IsNull(parsedFile.recoverysidebfeet) ? (object)DBNull.Value : parsedFile.recoverysidebfeet;
cmd.Parameters.Add("pCHIPOUT_LENGTH_INCHES", OracleDbType.Decimal).Value = util.IsNull(parsedFile.chipoutlengthinches) ? (object)DBNull.Value : parsedFile.chipoutlengthinches;
cmd.Parameters.Add("pSIDE_A", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.colorsidea) ? (object)DBNull.Value : parsedFile.colorsidea;
cmd.Parameters.Add("pSIDE_B", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.colorsideb) ? (object)DBNull.Value : parsedFile.colorsideb;
cmd.Parameters.Add("pSIDE_A2", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.bondingsidea) ? (object)DBNull.Value : parsedFile.bondingsidea;
cmd.Parameters.Add("pSIDE_B3", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.bondingsideb) ? (object)DBNull.Value : parsedFile.bondingsideb;
cmd.Parameters.Add("pSIDE_A4", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.micrsidea) ? (object)DBNull.Value : parsedFile.micrsidea;
cmd.Parameters.Add("pSIDE_B5", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.micrsideb) ? (object)DBNull.Value : parsedFile.micrsideb;
cmd.Parameters.Add("pCHIPOUT_PATTERN", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.chipoutpattern) ? (object)DBNull.Value : parsedFile.chipoutpattern;
cmd.Parameters.Add("pSIDE_A6", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.spitbargapsidea) ? (object)DBNull.Value : parsedFile.spitbargapsidea;
cmd.Parameters.Add("pSIDE_B7", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.spitbargapsideb) ? (object)DBNull.Value : parsedFile.spitbargapsideb;
cmd.Parameters.Add("pSPEEDBASEDCOLORREDUCTIONS", OracleDbType.Int32).Value = util.IsNull(parsedFile.speedbasedcolorreductionpercentscaled) ? (object)DBNull.Value : parsedFile.speedbasedcolorreductionpercentscaled;
cmd.Parameters.Add("pFIXED_CHIPOUT_ENABLED", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.fixedchipoutenabled) ? (object)DBNull.Value : parsedFile.fixedchipoutenabled;
cmd.Parameters.Add("pFIXED_CHIPOUT_SIZE_IN", OracleDbType.Decimal).Value = util.IsNull(parsedFile.fixedchipoutsizein) ? (object)DBNull.Value : parsedFile.fixedchipoutsizein;
cmd.Parameters.Add("pTYPE", OracleDbType.Int32).Value = util.IsNull(parsedFile.papertype) ? (object)DBNull.Value : parsedFile.papertype;
cmd.Parameters.Add("pPAPER_PROFILE_NAME", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.paperprofilename) ? (object)DBNull.Value : parsedFile.paperprofilename;
cmd.Parameters.Add("pFINISHING_TYPE", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.finishingtype) ? (object)DBNull.Value : parsedFile.finishingtype;
cmd.Parameters.Add("pFILES", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.files) ? (object)DBNull.Value : parsedFile.files;
cmd.Parameters.Add("pCURRENT_COPY", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.currentcopy) ? (object)DBNull.Value : parsedFile.currentcopy;
cmd.Parameters.Add("pCOPIES_PRINTED_OK", OracleDbType.Int32).Value = util.IsNull(parsedFile.copiesprintedok) ? (object)DBNull.Value : parsedFile.copiesprintedok;
cmd.Parameters.Add("pCOPIES_PRINTED_ERROR", OracleDbType.Int32).Value = util.IsNull(parsedFile.copiesprintederror) ? (object)DBNull.Value : parsedFile.copiesprintederror;
cmd.Parameters.Add("pACTUAL_LINEAR_FEET_USED", OracleDbType.Decimal).Value = util.IsNull(parsedFile.actuallinearfeetused) ? (object)DBNull.Value : parsedFile.actuallinearfeetused;
cmd.Parameters.Add("pFRAMES_PRINTED_OK", OracleDbType.Int32).Value = util.IsNull(parsedFile.sideaframesprintedok) ? (object)DBNull.Value : parsedFile.sideaframesprintedok;
cmd.Parameters.Add("pFRAMES_PRINTED_ERROR", OracleDbType.Int32).Value = util.IsNull(parsedFile.sideaframesprintederror) ? (object)DBNull.Value : parsedFile.sideaframesprintederror;
cmd.Parameters.Add("pFRAMES_PRINTED_OK8", OracleDbType.Int32).Value = util.IsNull(parsedFile.sidebframesprintedok) ? (object)DBNull.Value : parsedFile.sidebframesprintedok;
cmd.Parameters.Add("pFRAMES_PRINTED_ERROR9", OracleDbType.Int32).Value = util.IsNull(parsedFile.sidebframesprintederror) ? (object)DBNull.Value : parsedFile.sidebframesprintederror;
cmd.Parameters.Add("pUNITS", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.units) ? (object)DBNull.Value : parsedFile.units;
cmd.Parameters.Add("pFIXER", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sideafixer) ? (object)DBNull.Value : parsedFile.sideafixer;
cmd.Parameters.Add("pBLACK", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sideablack) ? (object)DBNull.Value : parsedFile.sideablack;
cmd.Parameters.Add("pCYAN", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sideacyan) ? (object)DBNull.Value : parsedFile.sideacyan;
cmd.Parameters.Add("pMAGENTA", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sideamagenta) ? (object)DBNull.Value : parsedFile.sideamagenta;
cmd.Parameters.Add("pYELLOW", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sideayellow) ? (object)DBNull.Value : parsedFile.sideayellow;
cmd.Parameters.Add("pMICR", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sideamicr) ? (object)DBNull.Value : parsedFile.sideamicr;
cmd.Parameters.Add("pFIXER10", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sidebfixer) ? (object)DBNull.Value : parsedFile.sidebfixer;
cmd.Parameters.Add("pBLACK11", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sidebblack) ? (object)DBNull.Value : parsedFile.sidebblack;
cmd.Parameters.Add("pCYAN12", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sidebcyan) ? (object)DBNull.Value : parsedFile.sidebcyan;
cmd.Parameters.Add("pMAGENTA13", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sidebmagenta) ? (object)DBNull.Value : parsedFile.sidebmagenta;
cmd.Parameters.Add("pYELLOW14", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sidebyellow) ? (object)DBNull.Value : parsedFile.sidebyellow;
cmd.Parameters.Add("pMICR15", OracleDbType.Decimal).Value = util.IsNull(parsedFile.sidebmicr) ? (object)DBNull.Value : parsedFile.sidebmicr;
cmd.Parameters.Add("pCOPIES_WITH_ERRORS", OracleDbType.Int32).Value = util.IsNull(parsedFile.copieswitherrors) ? (object)DBNull.Value : parsedFile.copieswitherrors;
cmd.Parameters.Add("pFRAME_INCHES_ALONG_WEB", OracleDbType.Decimal).Value = util.IsNull(parsedFile.frameinchesalongweb) ? (object)DBNull.Value : parsedFile.frameinchesalongweb;
cmd.Parameters.Add("pFRAME_INCHES_ACROSS_WEB", OracleDbType.Decimal).Value = util.IsNull(parsedFile.frameinchesacrossweb) ? (object)DBNull.Value : parsedFile.frameinchesacrossweb;
cmd.Parameters.Add("pSEQUENCE", OracleDbType.Int32).Value = 0;
cmd.Parameters.Add("pSTART_TIMESTAMP", OracleDbType.TimeStamp).Value = util.IsNull(parsedFile.startprintingtimestamp) ? (object)DBNull.Value : Convert.ToDateTime(parsedFile.startprintingtimestamp);
cmd.Parameters.Add("pSEQUENCE16", OracleDbType.Int32).Value = 0;
cmd.Parameters.Add("pEND_TIMESTAMP", OracleDbType.TimeStamp).Value = util.IsNull(parsedFile.endprintingtimestamp) ? (object)DBNull.Value : Convert.ToDateTime(parsedFile.endprintingtimestamp);
cmd.Parameters.Add("pCUSTOMER_JOB_ID", OracleDbType.NVarchar2).Value = util.IsNull(parsedFile.customerjobid) ? (object)DBNull.Value : parsedFile.customerjobid;
PrintOracleCommand(cmd);
cmd.ExecuteNonQuery();
}
答案 0 :(得分:0)
我不是C#专家,但你不是缺少绑定变量指标吗?即,您的SQL文本不是:
INSERT INTO HP_PRINTING_MSG_TBL
(SOFTWARE_VERSION, SPEC_VERSION, SOURCE, MESSAGE_NAME, ...)
VALUES
(:pSOFTWARE_VERSION, :pSPEC_VERSION, :pSOURCE, :pMESSAGE_NAME, ... )
否则,“pSOFTWARE_VERSION”等将被解释为列而不是要绑定的变量。