Oracle извлекает неверные данные в C # - PullRequest
0 голосов
/ 14 февраля 2019

У меня есть таблица в базе данных Oracle, и я передаю один параметр u_id из моего приложения на C # в хранимую процедуру Oracle для извлечения данных, основанных на u_id, но, если это значение, передается u_id непосредственно в мой сохраненныйЗатем запустите процедуру и получите правильные данные, но всякий раз, когда я передаю значение u_id из своего приложения на C # и связываю эти данные с сеткой, он отображает все записи из таблицы, вы можете проверить это вснимок экрана ниже:

Извлекает правильные данные в запросе Oracle:

Запрос Oracle

, но отображаются все записи на странице:

неверные данные на странице

хранимая процедура Oracle:

create or replace procedure uspGetTrackByUID(u_id in varchar2,
                                         p_out out sys_refcursor) as
begin
    open p_out for
        select *
        from tblEmailTrack t
        where t.flag = 'R'
        and t.u_id = u_id;
end;

C # код:

private void OGetTrackByUID(string uid)
{
        connection();
        OracleCommand cmd = new OracleCommand("uspGetTrackByUID", ocon);
        cmd.CommandType = CommandType.StoredProcedure;
        cmd.Parameters.AddWithValue("u_id", uid.Trim());
        cmd.Parameters.Add("p_out", OracleType.Cursor).Direction = ParameterDirection.Output;

        try
        {
            ocon.Open();
            grdTrack.EmptyDataText = "User haven't read the mail yet";
            grdTrack.DataSource = cmd.ExecuteReader();
            grdTrack.DataBind();
        }
        catch (Exception ex)
        {
            throw ex;
        }
        finally
        {
            ocon.Close();
            ocon.Dispose();
        }
}

Что может бытьвопрос?

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