错误“参数类型错误,超出可接受范围或彼此冲突”

时间:2018-10-11 17:10:12

标签: delphi

尝试了我学到的一切后,我一直被这个错误困扰。 我的窗体上有两个DBGrid,它们都有不同的名称,并连接到两个不同的ADO连接。当我过滤数据库时,出现标题中所述的错误,我不知道该怎么办,这就是程序那部分的外观。

procedure TfrmDatabase.btnYouTubeSearchClick(Sender: TObject);
var
  sName: string;
begin
  sName := InputBox('Enter the name of the YouTuber you want to search',
    'Please enter name here', '');
   with DataModule3 do
   begin
      tblYouTube.Open;
      tblYouTube.Filtered := false;
      tblYouTube.Filter := 'Name of YouTuber = ' + QuotedStr(sName);
      tblYouTube.Filtered := true;

   end;
end;

1 个答案:

答案 0 :(得分:2)

使用dbGO ADO连接时,带空格的字段名称必须用方括号括起来。它也必须是表的字段名称,而不是字段标题/标题,因此请仔细检查。

[Home State] = 'CA' or [Home State] = 'MA'

在帮助中:Data.Win.ADODB.TCustomADODataSet.Filter

  

当字段名称包含空格时,必须将字段名称括在   括号。例如:

     

def regex_filter(val): if val: mo = re.search(regex,val) if mo: return True else: return False else: return False df_filtered = df[df['col'].apply(regex_filter)]