exec querydata ' name=''john'''

解决方案 »

  1.   

    查询语句中字符串的单引号' ==> '''name=''john'''
      

  2.   

    各位大哥,都说不能在中间改变name='john'这个东西啊,控件就生成这个东西name='john',只能在这个东西外部加其他语句啊?是不是没有办法啊?
      

  3.   

    用replace替换一下呗
    replace('控件生成的','''','''''')
      

  4.   

    CREATE PROCEDURE querydata 
    @wherestr varchar(8000)
     AS
    exec('select*from table1  where '+@wherestr+'')
    GO
      

  5.   

    CREATE PROCEDURE querydata 
    @wherestr varchar(8000)
     AS
    exec('select * from table1  where name=''john''')
    GO或:
    CREATE PROCEDURE querydata 
    @wherestr varchar(8000)
     AS
    exec('select * from table1  where name='+char(39)+'john'+char(39))
    GO
      

  6.   

    大哥,都说不能拆开name='john'
      

  7.   

    CREATE PROCEDURE querydata 
    @wherestr varchar(8000)
     AS
    exec('select*from table1  where '+Replace(@wherestr,char(39),char(39)+char(39))
    GO
      

  8.   

    哦,明白了,那你可以用passionke(每一步都改变未来,却只能有一种结局!) 的方法
      

  9.   

    jinjazz的有语法错误啊,passionke是什么来的
      

  10.   

    哈哈,用双引号去执行就行了,
    exec querydata "name='john'"