sql在命令行可运行,程序中报错
夜雨灬梧桐 2018-09-22 02:37:42 HistoryDataEntity{ruserName='张大', ruserCode='2991', insideCode='1111', deviceName='test2', chName='CH1', variUnit='吨', ruserNeibor='光明小区', variDy='396', variData=暂未更新, variData1=, variData2=, variData3=, dataRecord=0, produceTime=Fri Sep 21 00:00:00 CST 2018, deviceId='743251f4-6b8a-415c-b4dc-6b71eea35d25', unitCode='abcd'}
2018-09-22 02:20:45 [Thread-12] [updateHistoryDataEntity.debug()] DEBUG - ==> Preparing: update history_data set ruser_name=?,ruser_code=?, inside_code=?, device_name=?, ch_name=?,vari_unit=?,ruser_neibor=?, vari_dy=?,vari_data=?,produce_time=?, device_id=?,unit_code=?,vari_data1=?, vari_data2=? ,vari_data3=?,data_record=? where device_id =? and ch_name =? and date(produce_time)=date(? )
2018-09-22 02:20:45 [Thread-12] [updateHistoryDataEntity.debug()] DEBUG - ==> Parameters: 张大(String), 2991(String), 1111(String), test2(String), CH1(String), 吨(String), 光明小区(String), 396(String), 暂未更新(String), 2018-09-21 00:00:00.0(Timestamp), 743251f4-6b8a-415c-b4dc-6b71eea35d25(String), abcd(String), (String), (String), (String), 0(Integer), 743251f4-6b8a-415c-b4dc-6b71eea35d25(String), CH1(String), 20180921(String)
22-Sep-2018 02:20:45.142 信息 [Thread-12] org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions Loading XML bean definitions from class path resource [org/springframework/jdbc/support/sql-error-codes.xml]
2018-09-22 02:20:45 [Thread-12] [DataOperationHandler.run()] ERROR - new analysis error743251f4-6b8a-415c-b4dc-6b71eea35d25----:net.water_iot.Dao.HistoryDataDao.updateHistoryDataEntity (batch index #1) failed. Cause: java.sql.BatchUpdateException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 9
; bad SQL grammar []; nested exception is java.sql.BatchUpdateException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 9
我的sql语句在命令行能正确运行,程序中报错,我查看了一下控制台打印的sql 和参数,和命令行的一样,但是一直报错,弄了几个小时了,还是不知道怎么回事,有大神能帮帮我吗?
下面贴我的mapper 的sql 和命令行运行效果:
mapper文件sql:
update history_data set ruser_name=#{historyDataEntity.ruserName},ruser_code=#{historyDataEntity.ruserCode},
inside_code=#{historyDataEntity.insideCode},
device_name=#{historyDataEntity.deviceName},
ch_name=#{historyDataEntity.chName},vari_unit=#{historyDataEntity.variUnit},ruser_neibor=#{historyDataEntity.ruserNeibor},
vari_dy=#{historyDataEntity.variDy},vari_data=#{historyDataEntity.variData},produce_time=#{historyDataEntity.produceTime},
device_id=#{historyDataEntity.deviceId},unit_code=#{historyDataEntity.unitCode},vari_data1=#{historyDataEntity.variData1},
vari_data2=#{historyDataEntity.variData2}
,vari_data3=#{historyDataEntity.variData3},data_record=#{historyDataEntity.dataRecord}
where device_id =#{deviceId} and ch_name =#{chName} and date(produce_time)=date(#{produceTime}
;
命令行sql 以及运行结果:
update history_data set ruser_name='张大',ruser_code='2991',inside_code='1111',
device_name='test2',
ch_name='CH1',vari_unit='吨',ruser_neibor='光明小区',
vari_dy='396',vari_data='暂未更新',produce_time='2018-09-21 00:00:00.0',
device_id='743251f4-6b8a-415c-b4dc-6b71eea35d25',unit_code='abcd',vari_data1='',vari_data2=''
,vari_data3='',data_record='0' where device_id ='743251f4-6b8a-415c-b4dc-6b71eea35d25' and ch_name ='CH1' and date(produce_time)=date('20180921');
Query OK, 0 rows affected
Rows matched: 1 Changed: 0 Warnings: 0
求帮助!!!!