这个语句有毛病吗?问题出在那里?

SELECT * FROM dbo.[16级] where 1=1 ${if(lenth(networkname==0),""," and 姓名 = '" + networkname +'"}
networkname是一个参数。应该是最后and那里的格式书写问题。
FineReportzjwater 发布于 2017-2-17 22:51
悬赏:2 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共12回答
最佳回答
0
cherishdqy发布于2017-2-17 22:51(编辑于 2023-9-6 09:34)
555
  • zjwater zjwater(提问者)

    \" and 姓名 = \'\" + networkname +\'\"
    这一句有毛病吗?
    回复
    2017-02-17 23:19 
最佳回答
0
zjwater发布于2017-2-17 23:19(编辑于 2023-9-6 09:34)
555
最佳回答
0
cherishdqy发布于2017-2-17 23:20(编辑于 2023-9-6 09:34)
555
  • zjwater zjwater(提问者)

    这一句的单引号和双引号的位置以及是否要一一对应吃不准,比如是在networkname这里前面是否要有双引号或者后面是否需要有单引号或者是还需要一个双引号。
    回复
    2017-02-17 23:23 
最佳回答
0
zjwater发布于2017-2-17 23:23(编辑于 2023-9-6 09:34)
555
  • cherishdqy cherishdqy

    单引号是sql中处理字符串的
    回复
    2017-02-17 23:39 
最佳回答
0
cherishdqy发布于2017-2-17 23:30(编辑于 2023-9-6 09:34)
555
最佳回答
0
cherishdqy发布于2017-2-17 23:37(编辑于 2023-9-6 09:34)
555
最佳回答
0
cherishdqy发布于2017-2-17 23:39(编辑于 2023-9-6 09:34)
555
  • zjwater zjwater(提问者)

    那我where 1=1 ${if(lenth(networkname==0),\"\",\" and 姓名 = \'\" + networkname +\'\"}
    这一句是不是最后还少一个双引号?\" and 姓名 = \'\" + networkname +\'\"\"这样吗?
    回复
    2017-02-17 23:43 
最佳回答
0
zjwater发布于2017-2-17 23:43(编辑于 2023-9-6 09:34)
555
  • cherishdqy cherishdqy

    哦,没注意看,确实少一个双引号,是后面的单引号前面少了一个,\" and 姓名 = \'\" + networkname +\"\'\"
    回复
    2017-02-17 23:44 
最佳回答
0
cherishdqy发布于2017-2-17 23:44(编辑于 2023-9-6 09:34)
555
  • zjwater zjwater(提问者)

    谢谢您的耐心回复。
    本来要跟你继续提问,在编辑提问问题的时候,我刚才终于发现问题在哪里了。
    那就是if(),后面还是少了一个右括号导致的。非常感谢。现在解决了。
    回复
    2017-02-17 23:48 
  • zjwater zjwater(提问者)

    正确的应该是where 1=1 ${if(len(networkname)==0,\"\",\"and 姓名 = \'\"+ networkname +\"\'\")}  我加红的这个右括号没有
    回复
    2017-02-17 23:50 
最佳回答
0
zjwater发布于2017-2-17 23:48(编辑于 2023-9-6 09:34)
555
  • cherishdqy cherishdqy

    {:9_225:}这个还真是考验眼力啊
    回复
    2017-02-17 23:50 
  • 0关注人数
  • 495浏览人数
  • 最后回答于:2017-2-17 23:50
    活动推荐 更多
    热门课程 更多
    返回顶部