数据库里的四个表:ZT1 , ZT2,  ZT3  ,ZT4
ZT1表里面的Domain_Type字段记录
和ZT2表里面的DDns_Keyword字段记录对比,符合条件的在ZT1表里面Domain_Type字段记录项自动填写'动态'.
和ZT3表里面的White_Keyword字段记录模糊对比,符合条件的在ZT1表里面的Levels字段记录项自动填写'W'.
和ZT3表里面的black_Keyword字段记录模糊对比,符合条件的在ZT1表里面的Levels字段记录项自动填写'A'.
ADOConnection1来连接数据库.

解决方案 »

  1.   

    update ZT1 set Domain_Type='动态' from ZT2
    where ZT1.Domain_Type=ZT2.DDns_Keywordupdate ZT1 set Levels='W' from ZT3
    where ZT1.Domain_Type like ZT3.Write_Keyword +'%'update ZT1 set Levels='A' from ZT3
    where ZT1.Domain_Type like ZT3.black_Keyword +'%'
      

  2.   

    update ZT1 inner join ZT2 on ZT1.Domain_Type=ZT2.DDns_Keyword set Domain_Type='动态' update ZT1 set Levels='W' from ZT3 
    where ZT1.Domain_Type like '%' + ZT3.Write_Keyword +'%' update ZT1 set Levels='A' from ZT3 
    where ZT1.Domain_Type like '%' + ZT3.black_Keyword +'%'
      

  3.   

    begin
      with form1.ADOQuery13 do
      begin
        Connection := form1.ADOConnection1;
        if Active then
          Active := False;
        SQL.Clear;
        SQL.Add('update DNSCACHE set Levels =''W'' from WhiteList where DNSCACHE.Domain_Type like '%' +  WhiteList.Write_Keyword +'%' ');
       try
          Open;
        except
         end;
       end;
    帮忙看下,出错了
      

  4.   

    添加SQL语句的那句改为如下:
       SQL.Add('update DNSCACHE set Levels ='+#39+'W'+#39+' from WhiteList where DNSCACHE.Domain_Type like %'+ WhiteList.Write_Keyword +'%')
      

  5.   

    +#39+'W'+#39+??
    like %'+ WhiteList.Write_Keyword +'%'??
      

  6.   

    可以了么?
    #39就是单引号
    你要获得单引就需要用这个加,
    like %':这个引号左边是字符串,后面就跟变量什么的了。
    + WhiteList.Write_Keyword +'%':这个就是在后面加一个%'update DNSCACHE set Levels ='+#39+'W'+#39+' from WhiteList where DNSCACHE.Domain_Type like %'+ WhiteList.Write_Keyword +'%' 返回的是:'update DNSCACHE set Levels = '  W  '   from WhiteList where DNSCACHE.Domain_Type like %xxx%'明白么
      

  7.   

    SQL.Add('update DNSCACHE set Levels ='++'w'++' from WhiteList where DNSCACHE.Domain_Type like %'+ WhiteList.Write_Keyword +'%');
    这样也不对吧
      

  8.   

    WhiteList.Write_Keyword
    WhiteList表名,提示identifier  
    好象这样写不行
      

  9.   

    SQL.Add('update DNSCACHE set Levels =''W'' from WhiteList where DNSCACHE.Domain_Type like ''% +  WhiteList.Write_Keyword +%'' ');
      

  10.   


    你这个是不行的,我以为WhiteList.Write_Keyword 是某个变量什么的呢。那应该这样:
    'update DNSCACHE set Levels ='+#39+'W'+#39+' from WhiteList where DNSCACHE.Domain_Type like %WhiteList.Write_Keyword%'  返回的是: 
    update DNSCACHE set Levels = '  W  '   from WhiteList where DNSCACHE.Domain_Type like %WhiteList.Write_Keyword% 先测一下上面的语句是否可以执行吧。
    如果可以执行,上面的写法就没有问题的。