非常に単純な質問であることが証明されると確信している質問をすることを前もってお詫びします。
特に電話番号のフィールドを含むMySQL(5.5)データベースがあります。そのフィールドを検索してスペースを削除するステートメントを作成しようとしています。したがって、「0208」を検索すると、「020 8」、「02 08」、「0 208」、「0208」などが返されます。
そして、これは Delphi XE2 にあります。違いが生じる場合に備えて。
'SELECT * FROM sales_ledger WHERE REPLACE(telephone, " ", "") LIKE "%' + SearchEdit.Text + '%"'
...エラーが表示されます...
WHERE 句のフィルタが無効です
...と...
'SELECT REPLACE(telephone, " ", "") FROM sales_ledger WHERE REPLACE(telephone, " ", "") LIKE "%' + SearchEdit.Text + '%"'
...私に与える...
フィールド名が無効です。一般的な SQL エラー。列が見つかりません。
...とにかく、実際にはすべてのフィールドが返される必要があります。
構文を修正するための支援をお願いできますか。さらに詳しい情報が必要な場合は、お気軽にお問い合わせください。ありがとうございました。
編集: 私が見逃した潜在的に重要な情報の 1 つです。テーブルは実際には、ODBC 経由でアクセスしている Sage データベースです。私が試したことは何も機能していないので、それが根本的な問題である可能性があります。それを先に言わなかったことをお詫びします。