应对sql语句中出现的引号问题

在写sql时我们难免会遇到一些sql语句的拼接,然而这种拼接很容易造成拼接的语句在执行时语法错误。

在数据库中默认字符串是被单引号包裹,但我们不指定他包裹的范围将会产生你意想不到的错误。

例如:


上面的代码直接通过StringBuild拼接为sql语句,初看没有什么错,但在执行的时候则会发现从addFormCode到语句最后都被一个单引号包裹了。达不到你想要的结果。


对于只包含双引号的字符串可以用如下方式解决。


即让你的字符串变量被单引号包裹,那么数据库就会将一个双引号包裹的内容当作一个整体。


但当你的字符串中既有单引号又有双引号时则不能再用上诉方式了,最好的解决方案是用占位符代替变量。


通过?占位符占位,再在执行语句前指明占位符的值。这种方式也是最好的解决方式,推荐sql都使用该方式编写。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值