aaa是个string变量时语句为aduquery1.add('select * from 表 where ID='''+aaa+'''');当aaa为整形变量的时候又该怎么写

解决方案 »

  1.   

    aduquery1.add('select * from 表 where ID='+IntToStr(aaa));
    这就是整形变量的写法,不要加''
      

  2.   

    不好意思,刚才一急问错了,因该是ID 和aaa同为整形时该怎么写
    不加''通不过
      

  3.   

    什么叫做 "ID 和aaa同为整形时"?
      

  4.   

    var
    aaa:string;
    begin
    aaa:='123';
     with adoquery1 do
     begin
      close;
      add('select * from table where id='+aaa);
      open;
     end;
    end;
      

  5.   

    with query1 do
    begin
       close;
       sql.clear;
       sql.add('select * form abc where id='+inttostr(gid));
       open;
    end;
      

  6.   

    补充如果aaa为string类型的话那么可以去掉inttostrwith query1 do
    begin
       close;
       sql.clear;
       sql.add('select * form abc where id='+aaa);
       open;
    end;
      

  7.   

    aduquery1.add('select * from 表 where ID='+aaa);
      

  8.   

    建议你看一看有关SQL语法方面的书。
      

  9.   

    用aduquery1.add('select * from 表 where ID='+aaa);通不过Incompatible types:'string' and 'Integer'
      

  10.   

    一楼正确
    因为aaa是整型,要连接成字符串当然首先要转换为字符串了
    所以是inttostr(aaa)整个字符串为  'select * from 表 where ID='+inttostr(aaa)执行期时就是  'select * from 表 where ID=123' 了
      

  11.   

    这好像不是sql 语法的问题。搂主的题目改成“object pascal字符串操作语法求助”更为合适