先吐槽一句,oracle 真坑啊!
一個很正常的sql 語句一直報?ORA-00911: 無效字符 ,拿到數據庫去執行一點問題沒有,一運行代碼就報錯,然后一個字符一個字符的對比,竟然是因為sql 結尾的一個 ";" 導致,真坑
報錯的語句
@Insert("insert into OCMREPORT.OCMREPORT_INIPOINTSGQ " +" (OCCUR_MKT,EXP_DATE,OCCUR_MONTH,CSJF,XHJF,CSCE,HJCS,CSZB,GQJF,FPJFJE,QCJE,FSDATE,HJGQ) " +" values " +" (#{point.occurMkt},#{point.expDate},#{point.occurMonth},#{point.csjf},#{point.xhjf},#{point.csce},0,0,#{point.gqjf},0,0,#{point.fsdate},0);")void insertPointsGqOne(@Param("point")OcmReportIniPointsGq point);
正確執行的語句
@Insert("insert into OCMREPORT.OCMREPORT_INIPOINTSGQ " +" (OCCUR_MKT,EXP_DATE,OCCUR_MONTH,CSJF,XHJF,CSCE,HJCS,CSZB,GQJF,FPJFJE,QCJE,FSDATE,HJGQ) " +" values " +" (#{point.occurMkt},#{point.expDate},#{point.occurMonth},#{point.csjf},#{point.xhjf},#{point.csce},0,0,#{point.gqjf},0,0,#{point.fsdate},0)")void insertPointsGqOne(@Param("point")OcmReportIniPointsGq point);