Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / как отследить удаление таблиц? / 3 сообщений из 3, страница 1 из 1
20.02.2005, 10:42
    #32924981
mef
mef
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как отследить удаление таблиц?
в базе есть ряд однотипных талиц tab1, tab2, ... и таблица, хранящая их описание tab_keeper. При добавлении/удалении таблицы из процедуры, одновременно меняется содержимое tab_keeper. А как отловить момент ручного удаления? Можно ли делать триггер или правило на редактирование системных таблиц? Или может какие-то другие пути есть? PostgreSQL 8.0.0
...
Рейтинг: 0 / 0
21.02.2005, 03:59
    #32925244
фффф
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как отследить удаление таблиц?
Сделай нового пользователя, пароль которого не давай никому.
Залогинься под ним и создай функции для создания и удаления таблиц с опцией SECURITY DEFINER, там же пропиши гранты простым пользователям и обработку tab_keeper. Если писать на PL/pgSQL, то все операции с создаваемыми/удаляемыми объектами нужно делать внутри EXECUTE, иначе не будет работать.
Все - никто кроме админа(postgres) и данного аккаунта не сможет таблицу грохнуть, иначе чем через вызов функции.
...
Рейтинг: 0 / 0
24.02.2005, 13:42
    #32931153
mef
mef
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как отследить удаление таблиц?
тоже вариант, но хотелось бы решить именно программно - раз и навсегда.
в идеале - триггер на удаление из таблицы pg_class. Но постгрес не даёт на неё саздавать триггеры.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / как отследить удаление таблиц? / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]