我的查询语句过长,超过了255个字符的字符串极限,怎么办?
今天写了一个关于5个表的连接查询,超过了255个字符,不知道怎么解决这种问题

解决方案 »

  1.   

    分两次写!
    sql := 'asjkadjkadkldkldd';
    sql := sql + 'asdlkasdlkadjkadklda';
      

  2.   

    sql是一个string类型的字符串
    分多次写也是一样的啊
    主要是我的查询条件太多的原因,所以写得太长了啊
      

  3.   

    是SQL SERVER的话,就存储过程写
      

  4.   

    TQuery里面的SQL是可能超过255的啊。
      

  5.   

    你可以把sql变量申明为AnsiString或者WideString,可以让你写到2G。
    还有,如果你是用tquery的话,它的SQL属性是一个TStrings类型,不是String,是一个String序列,具体你可以查看帮助文档
      

  6.   

    使用WideString阿
     sql :WideString;
    ....
      sql:= sql + 'asdlkasdlkadjkadklda';
      

  7.   

    我用的是ADOQuery啊,谢谢各位的帮忙
      

  8.   

    ADOQuery1.SQL.Clear;
      ADOQuery1.SQL.Add('select * ');
      ADOQuery1.SQL.Add('from userinfo');
      ADOQuery1.Open;把你的语句分开,就不用管你的Sql语句有多长了,刚测试完毕,绝对没有问题。
      

  9.   

    忘了一点,注意前一句和后面一句之间的空格不能少,否则……,测试时连的是其他电脑的Sql Server服务器
      

  10.   

    这个可以这样:
    用 + 连接即可!
    adoquery1.sql.text:='select * from talbe'
                        + ' where ..........'
                        +' group by .........'