如何从AdoQuery的SQL语句中将其where条件提取出来呢,即
如:ADOQuery1.SQL.Text:='select * from 表名 where Name=xx';
如何将'where Name=xx'从以上SQL语句中提取出来,并要将其后面的#13#10去除掉

解决方案 »

  1.   

    #13#10去除掉:Trim()函数
    如何将'where Name=xx'从以上SQL语句中提取出来:提取子字符串试试
      

  2.   

    先把它取出来s:='select * from 表名 where Name=xx';
    然后删除where前的字符delete(s,1,pos('where',s))ok~~~~~
      

  3.   

    首先定位where的起点位置,然后再Copy(MainString, StartPos, StringLength)
      

  4.   

    var
      sSQLCommand, sWhereStr : string;begin
      sSQLCommand := ADOQuery1.SQL.lines.Text;
      sWhereStr   := Copy(sSQLCommand, pos('where', sSQLCommand), length(sSQLCommand)-1);
    ...
    end;
      

  5.   

    如果表名当中有汉字,若用定位函数pos找到where的位置,可用rightbstr,midbstr,leftbstr将where条件提取出来