Параметризованный запрос из .net в Oracle - PullRequest
1 голос
/ 11 декабря 2011

это мой стол в оракуле:

enter image description here

Я пытаюсь сделать это:

  selectCmd = "select * from scott.BONUS where ename like '% :f4  %'";
        var par = cmd.CreateParameter();
        par.DbType = DbType.String;
        par.ParameterName = "f4";
        par.Value = "fsd";
        cmd.Parameters.Add(par);

        cmd.CommandText = selectCmd;
        con.Open();

моя проблема в том, что после «как» я пробовал много вещей без успеха. В некоторых попытках читатель возвращался пустым, а в других - исключение.

1 Ответ

1 голос
/ 11 декабря 2011

То, что ищет что-то, содержащее буквенную последовательность символов пробел, двоеточие, f, 4 . Вы имеете в виду:

like '%' || :f4 || '%'

(отредактировано для отражения исправлений Стивена О.Д.Ноннелла, комментарии)

или проще; просто используйте

like :f4

И введите % в значение:

par.Value = "%" + "fsd" + "%";

(расширен для удобства, исходя из предположения, что "fsd" должен быть переменной или похожим в реальном коде)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...