dm1.ADOQueryXs.close;
   dm1.ADOQueryXs.SQL.clear;
   dm1.ADOQueryXs.SQL.Add('select * from cookies_xs where id = '+'2');
   dm1.ADOQueryXs.Open;
执行成功,很好。(id是我的一条记录中的字段名。)
程序改为:
cont:='名字';
....
dm1.ADOQueryXs.SQL.Add('select * from cookies_xs where xsname = '+cont);执行错误!说列名‘xsname’无效,我晕~~。(xsname是字段名)
各位大哥,这是怎么回事啊?

解决方案 »

  1.   

    只要这样修改就行了:
    cout:='''名字'''
      

  2.   

    dm1.ADOQueryXs.SQL.Add('select * from cookies_xs where xsname = '''+cont+'''');
    保证OK
      

  3.   

    to mib3000(黑仔) 
    不用改吧,楼主的cout本来就是个String变量。
    ————————————
    问题一定是在别的地方。
      

  4.   

    dm1.ADOQueryXs.SQL.Add('select * from cookies_xs where xsname='+#39+cont+#39);
    这样应该可以
      

  5.   

    应该这样:
    dm1.ADOQueryXs.SQL.Add('select * from cookies_xs where xsname ='+''''+cont+'''');
      

  6.   

    dm1.ADOQueryXs.SQL.Add('select * from cookies_xs where xsname = '+Quotedstr(cont));
      

  7.   

    to dulei115(): 但我也遇到过这样的问题,改后确实可以阿
      

  8.   

    来晚了,cont:='名字' 是字符串。
      'select * from cookies_xs where id = ''名字'' '
      或 'select * from cookies_xs where id = '+#39+名字+#39