Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
NHibernate: как вызывать ХП Oracle при каждом новом соединении с БД?
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток В базе данных имеется внутренняя система безопасности (таблицы пользователей, привилегий и т.д.). Написан набор хранимых процедур для создания/изменения/удаления записей. После подключения к БД нужно вызвать процедуру а-ля "Login(db_user, db_user_password)". Когда клиент вызывает ХП управления записями (типа "ArticleUpdate", "DepartmentInsert" и т.д.) внутри этих ХП происходит проверка права пользователя на выполнение данной ХП. Т.е. не пользователя Oracle, а пользователя из внутренней таблицы пользователей БД. Прочитал "NHibernate in action", сделал несколько тестовых примеров, но на вопрос ответа не нашел. Если в NHibernate каждый сеанс изменения свойств объекта выполняется в рамках отдельного подключения к БД, то придется каждый раз "логиниться", а это затратно. Соответственно, первый вопрос: как это сделать так, чтобы логиниться (по сути - выполнять некую ХП или набор ХП) перед операциями над объектом, но когда NHibernate уже получил из пула соединение с БД? И второй вопрос: как вообще решается задача сохранения/активации подключения к БД в NHibernate? Т.е. чтобы не приходилось каждый раз заниматься инициализацией структур данных "пользовательской сессии" внутри базы данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.03.2011, 20:47 |
|
||
|
NHibernate: как вызывать ХП Oracle при каждом новом соединении с БД?
|
|||
|---|---|---|---|
|
#18+
JohnSparrow, Самый простой вариант - это открывать сессию, передавая ей заранее открытое соединение. Сессия не будет его закрывать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.03.2011, 10:32 |
|
||
|
|

start [/forum/topic.php?fid=17&msg=37150485&tid=1350869]: |
0ms |
get settings: |
7ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
69ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
1ms |
| others: | 242ms |
| total: | 403ms |

| 0 / 0 |
