Различное поведение LIKE между моим приложением и мастером запросов Access

Я выполняю следующий запрос из своего веб-приложения и запускаю запрос 2007. И я получаю два разных результата.

SELECT R.Rept_Name, D.Dist_Name,S.State_Name FROM (tblReporter AS R LEFT JOIN tblDist AS D ON R.Dist_Id=D.Dist_Id) LEFT JOIN tblState AS S ON S.State_Id=R.State_Id WHERE R.Rept_Name LIKE '*Ra*' ORDER BY R.Rept_Name; 

Результат из веб-приложения состоит из 0 строк и из мастера запросов 2 строки. Если я удалю, где условие, то оба результата будут такими же. Пожалуйста, помогите мне, что не так с запросом. Если какая-либо другая информация требует, пожалуйста, скажите мне.

Код веб-приложения …

 public DataTable getRept(string rept, string mobno) { DataTable dt = new DataTable(); using (OleDbConnection conn = new OleDbConnection(getConnection())) { using (OleDbCommand cmd = conn.CreateCommand()) { cmd.CommandType = CommandType.Text; cmd.CommandText = "SELECT R.Rept_Name, D.Dist_Name,S.State_Name FROM (tblReporter AS R LEFT JOIN tblDist AS D ON R.Dist_Id=D.Dist_Id) LEFT JOIN tblState AS S ON S.State_Id=R.State_Id WHERE R.Rept_Name LIKE '*" + rept + "*' ORDER BY R.Rept_Name;"; conn.Open(); using (OleDbDataReader sdr = cmd.ExecuteReader()) { if (sdr.HasRows) dt.Load(sdr); } } } return dt; } 

    Вы сталкиваетесь с различием символов подстановки LIKE между запросами, запущенными в самом доступе, и запросы запускаются из внешнего приложения.

    При выполнении запроса из самого Access вам нужно использовать звездочку в качестве символа подстановки: LIKE '*Ra*' .

    При выполнении запроса из внешнего приложения (например, вашего приложения на C #) вам нужно использовать знак процента в качестве символа подстановки: LIKE '%Ra%' .

    Давайте будем гением компьютера.