一个中文空格引起的bug

下午码代码的时候,调用了公司封装的jar包,一直报sql语句错误。但是同事调用却没问题,搞的相当的郁闷。

我就将公司的jar包进行反编译,将编译后的代码copy到本地进行调试,获取将要运行的sql。

此时sql语句看起来一点都没错,我将sql语句粘贴到navicat里,就能明显看到,navicat并没有将where视作关键字(没有高亮表示),我删除where前面的空格,从新敲一个空格,此时where变成高亮,也就是意味着,此时的where是关键字。执行sql果然没问题。

从这里可以得知,是那个空格字符导致的。我能猜想到的是,那个字符可能是在中文下敲的。

同事执行的没问题,因为同事采用的是oracle 数据库,而我调用的时候,用的是mySql数据库。

得出结论:

代码尽可能的不要在中文下进行输入。



转载于:https://my.oschina.net/u/2344371/blog/599144

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值