程序无任何报错但是无法写入数据库
今日折腾了一晚上,弄不明白为什么从前端用EL表达式传入的数据,各方面测试都正常,允许QueryRunner的update(sql,params)方法都没有任何的报错,但是就是无法修改数据。后来发现了,我有一个传入的值带有空格。虽然说我们平时在数据库可视化编辑器里面 ,用多少个空格隔开都没有事,但是当params的值里面带有空格就相当于update table set name=‘张三’ where
·
今日折腾了一晚上,弄不明白为什么从前端用EL表达式传入的数据,各方面测试都正常,允许QueryRunner的update(sql,params)方法都没有任何的报错,但是就是无法修改数据。
后来发现了,我有一个传入的值带有空格。虽然说我们平时在数据库可视化编辑器里面 ,用多少个空格隔开都没有事,但是当params的值里面带有空格就相当于
update table set name='张三' where id=' 1234'
当找不到这个**" 1234"**这个id,自然就是不会修改成功,当然也不会报错。
我是在一个标签里面设置了
value=" ${user.SID} "
当然我没有打那么多空格,只是打了一个,为了让大家看清楚才故意多打几个。
正确的应该是
value="${user.SID}"
双引号里面不能带有空格!!!!
总结
当遇到数据库更新操作时,没有任何报错,也没有任何语句错误的时候,注意一下是不是在筛选条件中的值里面带有空格了!
更多推荐
所有评论(0)