powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Триггер на представление?
25 сообщений из 29, страница 1 из 2
Триггер на представление?
    #39491910
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет!
Нуждаюсь в совете, как лучше организовать захват измененных данных из "чужой" схемы, к которой имею привилегии только на чтение.
Т.е. не могу в нужных мне таблицах этой схемы расставить триггеры для обработки изменений.
Джоб не подходит, т.к. изменения должны вылавливаться мгновенно.
Я был уверен, что триггер на представление меня спасёт. Но триггер не ставится на read only :(
Может материализованное? Не имею опыта в таких делах...
Streams GG - не предлагать :)
...
Рейтинг: 0 / 0
Триггер на представление?
    #39491927
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдлькак лучше организовать захват измененных данных из "чужой" схемы, к которой имею
привилегии только на чтение.

Никак, обломись.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Триггер на представление?
    #39491986
efendi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
КурдльПривет!
Нуждаюсь в совете, как лучше организовать захват измененных данных из "чужой" схемы, к которой имею привилегии только на чтение.
...
Джоб не подходит, т.к. изменения должны вылавливаться мгновенно.


А зачем делать захват, если данные и так доступны мгновенно?
...
Рейтинг: 0 / 0
Триггер на представление?
    #39491989
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
efendiА зачем делать захват, если данные и так доступны мгновенно?
Затем, что в мастер-системе данные имеют другую структуру и их надо раскладывать по нескольким таблицам.
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492003
=nomad=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как вариант: данные грузятся в одну "таблицу". А потом по джобу ты их "переносишь" в другую с нужной структурой.
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492019
Andrey.L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдль,

Смотря насколько схема всё-таки "чужая". Можно создать триггер в "чужой" схеме, который будет раскладывать данные в твою схему. Например, этот триггер вызывает процедуру из твоей схемы, которая всё и делает. Главное что бы "чужая" схема согласилась на эти дополнительные манипуляции (тормоза).
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492033
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
=nomad=Как вариант: данные грузятся в одну "таблицу". А потом по джобу ты их "переносишь" в другую с нужной структурой.
Джоб как часто запускать? Раз в секунду? В миллисекунду?.. :(
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492034
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey.LКурдль,

Смотря насколько схема всё-таки "чужая". Можно создать триггер в "чужой" схеме, который будет раскладывать данные в твою схему. Например, этот триггер вызывает процедуру из твоей схемы, которая всё и делает. Главное что бы "чужая" схема согласилась на эти дополнительные манипуляции (тормоза).
Я же сказал, насколько "чужая" - имею доступ только на чтение, НЕ НА СОЗДАНИЕ ТРИГГЕРОВ (иначе я бы не тревожил благородную публику на форуме).
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492043
=nomad=
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще, почему бы тогда не сделать так:
Код: plsql
1.
2.
create or replace trigger [color=red]своясхема[/color].имятриггера
before insert or update or delete on [color=red]чужаясхема[/color].таблица


Ну и потом распихивай что и куда нужно в своей схеме - ну и ссылайся уже на таблицы в своей схеме?
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492054
Andrey.L
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
=nomad=Еще, почему бы тогда не сделать так:
Код: plsql
1.
2.
create or replace trigger [color=red]своясхема[/color].имятриггера
before insert or update or delete on [color=red]чужаясхема[/color].таблица



Ну и потом распихивай что и куда нужно в своей схеме - ну и ссылайся уже на таблицы в своей схеме?Уж лучше AFTER, на случай если есть свои BEFORE триггеры.
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492071
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andrey.L=nomad=Еще, почему бы тогда не сделать так:
Код: plsql
1.
2.
create or replace trigger [color=red]своясхема[/color].имятриггера
before insert or update or delete on [color=red]чужаясхема[/color].таблица



Ну и потом распихивай что и куда нужно в своей схеме - ну и ссылайся уже на таблицы в своей схеме?Уж лучше AFTER, на случай если есть свои BEFORE триггеры.
Коллеги, вы прикалываетесь? Я от безысходности даже попробовал: "привилегий недостаточно" (ЧТД)
Пожалуйста, не заливайте ветку домыслами, дайте возможность высказаться тому, кто знает oracle лучше нас.
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492072
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 =nomad=

https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:9530012000346610423 In Oracle you can have triggers owned by schema x on tables of schema y.
Unfortunately there seems to be no fine grained way to authorize this - user x needs CREATE ANY TRIGGER privilege.
(contrary to the similar situation with indexes, user y can grant CREATE INDEX on a table to user y; CREATE ANY INDEX is not needed).
КурдльЯ же сказал, насколько "чужая" - имею доступ только на чтение, НЕ НА СОЗДАНИЕ ТРИГГЕРОВ
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492172
stax..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльAndrey.Lпропущено...
Уж лучше AFTER, на случай если есть свои BEFORE триггеры.
Коллеги, вы прикалываетесь? Я от безысходности даже попробовал: "привилегий недостаточно" (ЧТД)
Пожалуйста, не заливайте ветку домыслами, дайте возможность высказаться тому, кто знает oracle лучше нас.

Вам у "вашей схеме" могут дать привелегию create any trigger?
етого достаточно, "чужая" схема про ето и не догадается

.....
stax
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492186
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stax..Вам у "вашей схеме" могут дать привелегию create any trigger?
https://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:6386500346452721 Now that said - you DO NOT want to do this!! the "any" privileges should be avoided whenever possible - user B can actually remove pretty much any trigger now!! just be creating an empty one.
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492290
-=APS=-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stax..,..."чужая" схема про ето и не догадаетсяКогда чужая схема поймает просадку по производительности или некий exception-нежданчик - догадается.
По словам ТС-а: "... Я же сказал, насколько "чужая" - имею доступ только на чтение, НЕ НА СОЗДАНИЕ ТРИГГЕРОВ"
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492351
efendi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
КурдльefendiА зачем делать захват, если данные и так доступны мгновенно?
Затем, что в мастер-системе данные имеют другую структуру и их надо раскладывать по нескольким таблицам.

Создать VIEW, имитирующие нужную структуру
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492428
Фотография Sayan Malakshinov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Query change notifications(object change notifications/continuous change notifications) ?
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492504
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stax..Вам у "вашей схеме" могут дать привелегию create any trigger?
етого достаточно, "чужая" схема про ето и не догадается

.....
stax
Спасибо за идею! Пойду договариваться с ДБадминами.
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492613
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Курдльstax..Вам у "вашей схеме" могут дать привелегию create any trigger?
етого достаточно, "чужая" схема про ето и не догадается

.....
stax
Спасибо за идею! Пойду договариваться с ДБадминами.
Я бы не дал, ни за что. Есть много более безопасные альтернативы, раз уж есть с кем договариваться...
P.S.
stax , спасибо за озвученный перевод моей первой ремарки..
2 Курдль
судя по вашей реакции - ни первую, ни вторую мою ремарку вы прочить не смогли.. Думаю о ссылках можно и не упоминать...
Используйте хотя бы https://translate.google.com/?hl=ru
Ну а уж Клиент для Google Translate http://translateclient.com/ru/ будет для вас манной небесной..
Поверьте, родной язык вам не помощник в вашей профессиональной карьере...если только это для вас не временное.
Да...и по личному опыту...начать...нет не учить...потихоньку понимать основной язык документации, не поздно ни в каком возрасте, вот только откладывать нельзя...
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492816
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViewerДа...и по личному опыту...начать...нет не учить...потихоньку понимать основной язык документации, не поздно ни в каком возрасте, вот только откладывать нельзя...
Спасибо за совет! Я обычно в первую очередь обращаюсь на oradocs, asktom, stackoverflow
Но не всегда удается сразу найти ответ на свой вопрос. Зато как приятно найти его в одном лаконичном посте на профессиональном форуме от настоящих профессионалов. Мне кажется, что эти форумы затем и существуют, чтобы упростить нашу жизнь.
В конкретном случае признаю Ваше первенство на совет про any triggers, который, правда, адресован был не мне (возможно поэтому я его и пропустил).
Как я понял, Вы знаете более изящный способ решения моей проблемы. Буду признателен за его публикацию.
Создавать триггеры на "чужие" таблицы оказалось недопустимым, т.к. это явно будет видно владельцу "чужой" схемы.
Я пока что склоняюсь к триггеру на мат.представление.
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492844
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльСоздавать триггеры на "чужие" таблицы оказалось недопустимым , т.к. это явно будет видно владельцу "чужой" схемы.
Почему нет? Самый естественный подход - это попросить владца схемы создать триггер по вашему скрипту.
При физическом отсутствии владеца - выполнить скрип через администратора базы или deploy менеджера.
Вы же не в личных целях этого добиваетесь. Наверняка есть официальная постановка задачи.
Там что решать это нужно на административном уровне вышестоящего руководства.
Приводятся обоснования, получаются подтверждения, наделённый необходимым правами исполнитель выполняет.
Всё это подшиватеся и учитывается в документации и регламентах.
Совершенно стандартный подход.
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492857
stax..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ViewerСовершенно стандартный подход.

покупная система, не разрешают хоть тресни
мож и добавят но за деньги

.....
stax
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492866
Курдль
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Viewer, stax прав!
Система, в которую я лезу своими грязными ручонками, поставлялась с гарантийным договором.
В нем запрет на любые вмешательства в структуру данных. Запрета на обращение к ней - нет.

Так что вы думаете про мою идею с мат.представлением и триггером на него?
Я уже понял, что не смогу воспользоваться FAST REFRESH и другими, использующими логи, т.к. логи - тоже достояние чужой схемы...
Но отловить момент изменения данных триггером и применить процедуру для выявления дельты - можно.
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492871
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КурдльЯ пока что склоняюсь к триггеру на мат.представление.
Не говорят о такой мелочи, как то что
https://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_6003.htm A materialized view log is located in the master database in the same schema as the master table
Курдльэто явно будет видно владельцу "чужой" схемы.
вы достаточно ясно себе представляете, как отработает триггер, если вместо fast refresh произойдёт complete refresh мат.представления (автоматически или по недосмотру)?
...
Рейтинг: 0 / 0
Триггер на представление?
    #39492873
Фотография Viewer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sorry, пока писал ответ, вы уже сами поняли, что к чему...
...
Рейтинг: 0 / 0
25 сообщений из 29, страница 1 из 2
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Триггер на представление?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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