Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
05.09.2005, 11:41
|
|||
|---|---|---|---|
|
|||
Текущая сессия |
|||
|
#18+
Вопрос в следующем: 1. Хочеться сделать лог действий пользователя на уровне СУБД. Т.е. все измения, которые вности юзверь должны быть отображены в таблице логов. 2. Авторизация/система прав пользователей делается на клиенте независимо от СУБД. Т.е. в СУБД все пользователи работают под одним аккаунтом. 3. Каждое действие по изменению данных делается авторизовано, т.е. должен быть автор измений. 4. Хочется передавать в СУБД параметр - id пользователя, который работает в данной сессии. И очень хочеться что бы этот параметр был многопользовательским, и работал автономно для каждой сессии доступа к Постгресу. Это можно например сделав таблицу ID текущей сессии, ID пользователя, но вот функции определяющей ID пользователя я не нашел :( Ну и собственно вопрос - как лучше всего это сделать? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.09.2005, 14:09
|
|||
|---|---|---|---|
Текущая сессия |
|||
|
#18+
Как лучше, я конечно, не знаю :), но пару вариантов могу предложить : 1. сделать слой для изменений данных только через ХП, в которые пихать ID пользователя 2. временная таблица для ID пользователя - живет до конца сессии PostgreSQL, данные о пользователе вносятся в неё при каждой транзакции, работает через RULE - см. пример во вложении ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
05.09.2005, 14:56
|
|||
|---|---|---|---|
|
|||
Текущая сессия |
|||
|
#18+
XMКак лучше, я конечно, не знаю 1. сделать слой для изменений данных только через ХП, в которые пихать ID пользователя 2. временная таблица для ID пользователя - живет до конца сессии PostgreSQL, данные о пользователе вносятся в неё при каждой транзакции, работает через RULE - см. пример во вложении 3. посмотри поиском создание переменных сессии в PLperl или PLTcl, и тогда, при каждом создании соединения первым делом устанавливаем переменную сессии в некое значение, и далее (внутри соединения) ее можно использовать не только в хп (явно посылая) но и в триггерах (давать отлуп - если не установлена). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
17.09.2005, 15:57
|
|||
|---|---|---|---|
|
|||
Текущая сессия |
|||
|
#18+
XMКак лучше, я конечно, не знаю :), но пару вариантов могу предложить : 1. сделать слой для изменений данных только через ХП, в которые пихать ID пользователя 2. временная таблица для ID пользователя - живет до конца сессии PostgreSQL, данные о пользователе вносятся в неё при каждой транзакции, работает через RULE - см. пример во вложении Спасибо! Идею реализовал, работает на 5+ :) Резюме (приложение на Delphi): Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. Скорее всего легче и быстрее реализовать это через глобальные переменные PLperl или PLTcl, но они не идут в комплекте стандартной поставки PostgreSQL 8.0.3 под винду. Замечания и предложения с удовольствием выслушаю :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=53&tablet=1&tid=2007007]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
133ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
2ms |
| others: | 234ms |
| total: | 455ms |

| 0 / 0 |
