まず、Access では null と空の文字列が異なることを知っておく必要があります。そのため、この問題が適切に処理されないと、特に混合環境で多くの問題が発生する可能性があります。クエリ。
(推奨チュートリアル: アクセス データベースの学習)
解決策は次のとおりです:
var SQLStr:string; begin // SQLStr := 'select * from ordertb where 1>0'; if Trim(Edit1.Text)<>'' then SQLStr := SQLStr +' and serialid like :a'; if Trim(Edit2.Text)<>'' then SQLStr := SQLStr +' and pname like :b'; with ADOQuery1 do begin Close; SQL.Clear; SQL.Add(SQLStr); if Trim(Edit1.Text)<>'' then Parameters.ParamByName('a').Value := '%'+Trim(Edit1.Text)+'%'; if Trim(Edit2.Text)<>''then Parameters.ParamByName('b').Value := '%'+Trim(Edit2.Text)+'%'; Open; end; end;
または:
begin with ADOQuery1 do begin Close; SQL.Clear; SQL.Add('select * from ordertb where 1>0'); if Trim(Edit1.Text)<>'' then SQL.Add(' and serialid like ''%'+Trim(Edit1.Text)+'%'''); if Trim(Edit2.Text)<>''then SQL.Add(' and pname like ''%'+Trim(Edit2.Text)+'%'''); Open; end; end;
概要 :
空の条件を持つフィールドをクエリ ステートメントから除外します。
以上が空のフィールドレコードの削除にアクセスするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。