По сути, я хочу получить отфильтрованный набор объектов из базы данных (Oracle 9.2) на основе свойства id объекта PsalertsEvent. Код выполняется:
Public Overloads Function GetAll(ByVal laterThan As Long, ByVal filteredPsalertsEvents As IList) As IList Implements IPsalertsEventRepo.GetAll
'Get all psalerts events with an ID greater then the specified laterThan parameter
filteredPsalertsEvents = MyBase.NHibernateSession.CreateQuery("from PsalertsEvent p where p.id > " & laterThan).List
Return filteredPsalertsEvents
End Function
NUnit генерирует следующий текстовый вывод:
***** PsalertsIp.Tests.Data.PSALERTSEventRepoTests.CanGetUnprocessedPsalertsEvents
NHibernate: выберите max (psalertsev0_.Id) как col_0_0_ из ALARM_REPLAY_NEW psalertsev0_
NHibernate: выберите psalertsev0_.Id в Id0_, psalertsev0_.ALARM_SUBSTATION_NAME как ALARM2_0_, psalertsev0_.ALARM_BUSBAR_NUM как ALARM3_0_, psalertsev0_.ALARM_COMPONENT_ALIAS как ALARM4_0_, psalertsev0_.ALARM_NAME как ALARM5_0_, psalertsev0_.ALARM_TEXT как ALARM6_0_, psalertsev0_.ALARM_TIME как ALARM7_0_ из ALARM_REPLAY_NEW psalertsev0_ где psalertsev0_. Id> 20118832
NHibernate: ОБНОВИТЬ ALARM_REPLAY_NEW УСТАНОВИТЬ ALARM_SUBSTATION_NAME =: p0, ALARM_BUSBAR_NUM =: p1, ALARM_COMPONENT_ALIAS =: p2, ALARM_NAME =: p3, ALARM_TEXT =: p4, ALARM_TIME =; P: P1 = P = WH: = 0,: p2 = «Текст значения»,: p3 = NULL,: p4 = «ЗАКРЫТО»,: p5 = 10/03/2010 15:06:31,: p6 = 20118833
15: 06: 56,389 ОШИБКА [TestRunnerThread] AbstractBatcher [(null)] - Не удалось выполнить команду: ОБНОВИТЬ ALARM_REPLAY_NEW УСТАНОВИТЬ ALARM_SUBSTATION_NAME =: p0, ALARM_BUSBAR_NUM =: p1, ALARM_COMPONENT_ALIAS =: PARM = PARM = ALARM: PARM = ALM: PARM = PARM: ALARM: PARM = ALM: PARM = ALM =: p5 ГДЕ Id =: p6
Oracle.DataAccess.Client.OracleException ORA-01031: недостаточные привилегии в Oracle.DataAccess.Client.OracleException.HandleErrorHelper (Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx * pOpoStlcrcSlcr2 * String2, String String2, String String), String2, String, String, String, String.
в Oracle.DataAccess.Client.OracleException.HandleError (Int32 errCode, OracleConnection conn, строковая процедура, IntPtr opsErrCtx, OpoSqlValCtx * pOpoSqlValCtx, Object src)
в Oracle.DataAccess.Client.OracleCommand.ExecuteNonQuery ()
в NHibernate.AdoNet.AbstractBatcher.ExecuteNonQuery (IDbCommand cmd)
NUnit проходит соответствующий тест, однако впоследствии генерируется ошибка с центром в исключении оракула:
Oracle.DataAccess.Client.OracleException ORA-01031: недостаточные права доступа