错误语句
报错
VS2012提示我,在return_quy旁请注意”,”
分析
- 根据报错原因,我以为是我疏忽中,return_qty并没有对应wms_receive_mtl表中的一个字段,但检查后,是完全对应的
后来,我又认为是我的SQL语句写的有问题,但是放在数据库里是能完好运行的
但是我将SQL语句放入数据库中时,我首先去掉了拼接符“+”,并自己为语句之间加了空格(做这一步的时候,我心里完全没有异样)
后来仔细查找原因时才发现,拼接字符时,语句间未加空格!也就是说,在我眼里,我的SQL语句是:update wms_receive_mtl set rec_qty=rec_qty+@return_num,return_qty=return_qty-@return_num where receipt_no=@receipt_no
在VS2012眼里,我的SQL语句是:update wms_receive_mtlset rec_qty=rec_qty+@return_num,return_qty=return_qty-@return_numwhere receipt_no=@receipt_no
正确语句
结论
本来是为了让代码更易阅读,可是在写SQL语句的时候,忽略了拼接字符串的特性,导致的错误,需要反思,更认真的面对代码。