掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
MDBのあいまい検索で、ワイルドカードをエスケープするには? (ID:145830)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
こんにちは。 Microsoft.Jet.OLEDB.4.0を使用して、Access2003のMDBファイルの内容を検索しようと思っています。 しかし、検索文字をLIKEであいまい検索しようとした場合、%などをエスケープしたいのですが、 以下のようにすると、以下参考ソースのDataTable(dtTable)にデータをFillする部分で 「System.Data.OleDb.OleDbException: IErrorInfo.GetDescription が E_FAIL(0x80004005) で 失敗しました。」 という例外が発生してしまいます。 objDbConnection = New OleDb.OleDbConnection objDbConnection.ConnectionString = _ "ProviderMicrosoft.Jet.OLEDB.4.0;" & _ "Data Source=" & (MDBファイル名) & ";" objDbConnection.Open() sql = "SELECT * FROM TABLE_1 WHERE FIELD_1 LIKE '%100\%% ESCAPE '\'" objDbCommand = New OleDb.OleDbCommand(sql, objDbConnection) oleDa = New OleDb.OleDbDataAdapter(objDbCommand) oleDa.Fill(dtTable) '※ここでエラーとなる SQL Serverの時はこのようなエラーが出なかったと思いますが、MDBの場合、 %などををエスケープする場合は、どのようにしたらよいでしょうか? 宜しくお願い申し上げます。
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.