'update kuchun set'+ 
      '库存数量=''' + dm.ADOQueryclient.fieldbyname('库存数量').AsString + ''','+
      '发货数量=''' + dm.ADOQueryclient.fieldbyname('产品数量').AsString + ''','+
      '库存产品=''' + dm.ADOQueryclient.fieldbyname('出货品种').AsString + ''','+ 
      '发货时间=''' + dm.ADOQueryclient.fieldbyname('发货时间').AsString + ''','+
      '目的港=''' + dm.ADOQueryclient.fieldbyname('目的港').AsString + ''','+
      '已发货数量=''' + dm.ADOQueryclient.fieldbyname('已发货数量').AsString+ ''''+
      'where' +
      '客户名称'='''+dm.ADOQueryclient.fieldbyname('客户名称').asstring+''''总是提示说语法错误,不知为何。请指点!谢谢!

解决方案 »

  1.   

    luxuewei你好,发贴上来就是双引号了。
      

  2.   

    如果用了双引号,调试是就不成功了,怎么可以会看到后来的update语法错误呢。论坛发贴会自动传为双引号的。
      

  3.   

    这种写法最好可以使用Quoedstr方法实现,可以代替那么多的引号。
      

  4.   

    代码复制上来之后就变成双引号了。错误提示为:update的语句的语法错误码。.  
    注意,,后面还有个.但是我就是找不出来哪里有这个点。前面的where空格也加了,但是错误依然。
      

  5.   

    hsmserver 
    雨晖 
    等 级: 
     发表于:2007-08-13 16:43:55 8楼 得分:0 
    好象where前面没有空格 顶
     
      

  6.   

    建议调试一下 得到SQL语句 然后放到相应的数据库分析器中看看 是什么问题
      

  7.   

    好微小的错误啊。。每句的+号要加一个空格,where前后都要加一个空格,改为这样: 
     dm.ADOQuerykuchun.SQL.Add('UPDATE kuchun SET '+
          '库存数量=''' + dm.ADOQueryclient.fieldbyname('库存数量').AsString + ''',' +
          '发货数量=''' + dm.ADOQueryclient.fieldbyname('产品数量').AsString + ''',' +
          '库存产品=''' + dm.ADOQueryclient.fieldbyname('出货品种').AsString + ''',' +
          '发货时间=''' + dm.ADOQueryclient.fieldbyname('发货时间').AsString + ''',' +
          '目的港=''' + dm.ADOQueryclient.fieldbyname('目的港').AsString + ''',' +
          '已发货数量=''' + dm.ADOQueryclient.fieldbyname('已发货数量').AsString+ '''' +
          ' WHERE ' +
          '客户名称=''' + dm.ADOQueryclient.fieldbyname('客户名称').Asstring+'''');
      dm.ADOQuerykuchun.Open ;但是错误提示为:commandtext does not return a result set将dm.adoquerykuchun.open改为 execsql正常,感谢大家提醒。很多朋友说为什么不使用参数,因为我不会。呵呵,虽然成功了,但是没有达到我的目的,access两个表下的同个字段数值保持一致。非常感谢大家!谢谢!
      

  8.   

    ///最后面少了
    try
      dm.adoquerykuchun.open;
    except
      dm.adoquerykuchun.execsql;
    end;
      

  9.   

    hsmserver   
    雨晖   
    等 级:   
      发表于:2007-08-13   16:43:55   8楼   得分:0   
    好象where前面没有空格   顶