|
trigger
|
|||
---|---|---|---|
#18+
Hi! Не подскажите ли как: Заставить триггер, который сработал на одном PostGre сервере, менять содержимое таблицы, находящейся на другом сервере? Т.е. по событию (например добавление в таблицу) срабатывает тригер и выплевывает на удаленный сервер - "в таблицу что-то добавили" ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2003, 18:38 |
|
trigger
|
|||
---|---|---|---|
#18+
Как чего то сделать на другом сервере?\r Ответ можно выбрать отсюда /topic/35415\r Коротко говоря ставишь из ../contrib /dblink этот самый dblink\r и выполняешь произвольные запросы к удаленной базе или другим базам на твоем хосте. Например :\r mdb=# select dblink_connect('hostaddr=200.191.132.2 port=5432 dbname=radius us \r er=postgres password=1'); \r dblink_connect \r ---------------- \r OK \r (1 запись) \r \r mdb1=# select * from dblink('select username from radacct') as t(name varchar);\r name \r ---------- \r gennadiy \r pionnier \r vova \r pionnier \r gennadiy \r vova \r vova \r testik \r testik \r gennadiy \r testik \r ===============================================\r Вот и все. Пиши триггер,или правило , вызывающее dblink() и будет тебе счастье ;)\r Удачи! ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2003, 20:16 |
|
trigger
|
|||
---|---|---|---|
#18+
2Stellar Хмм есть стандартные решение и нечего поощрять изобретение велосипедов и "автоматических думателей" ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
29.07.2003, 20:18 |
|
trigger
|
|||
---|---|---|---|
#18+
Огромное спасибо за помощь! А есть ли способ "подцепить" базу с сервера другой СУБД? (например MS SQL) Если нет, то каким образом можно заставить триггер выполнять какие-либо действия помимо манипуляций с данными? Скажем письмишко отбить, что произошло что-то и т.п.? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2003, 14:55 |
|
trigger
|
|||
---|---|---|---|
#18+
А вот в этом случае действительно придется писать триггер на C. Либо на untrusted plperl. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2003, 16:34 |
|
trigger
|
|||
---|---|---|---|
#18+
Спасибо! А не подскажите где бы про это почитать поподробнее можно было? про то как можно триггеры, созданные через С и perl применять в PostgreSQL? А может быть примерчик какой-нибудь посмотреть можно? Например триггер, написаный на любом языке, позволяющий отправить сообщение по эл. почте. Еще раз, спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2003, 17:56 |
|
trigger
|
|||
---|---|---|---|
#18+
Спасибо! А не подскажите где бы про это почитать поподробнее можно было? про то как можно триггеры, созданные через С и perl применять в PostgreSQL? А может быть примерчик какой-нибудь посмотреть можно? Например триггер, написаный на любом языке, позволяющий отправить сообщение по эл. почте. Еще раз, спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2003, 17:56 |
|
trigger
|
|||
---|---|---|---|
#18+
к сожалению в документации найти примеры довольно трудно, сам пока не нашёл, попробуй покапаться в архивах и www.google.com http://archives.postgresql.org/pgsql-docs/2000-05/msg00007.php ... |
|||
:
Нравится:
Не нравится:
|
|||
30.07.2003, 21:02 |
|
trigger
|
|||
---|---|---|---|
#18+
>А есть ли способ "подцепить" базу с сервера другой СУБД? (например MS SQL) Способ есть - это различного рода ODBC proxy. Например я пользуюсь для забора данных из табличек M$ и Paradox такой штукой dbtcp прозывается. Живет он тут : http://sourceforge.net/projects/dbtcp/ . Под виндой висит его сервер. Клиент пускается на фрюшке, и по крону забирает например свежие данные в поток INSERT-ов. В другом варианте - клиент dbtcp вызывается из постгресовой ХП писанной на plperl. И это гораздо красивей и стабильней скрипта пускаемого по крону, зато его быстрее написать ;) К сожалению то что предлагается - довольно сырая вещь которую еще нужно круто "обработать рашпилем" :) Вдобавок на мои вопли о глюках откликнулся только разработчик клиента.... а проблемы всплывали на серваке. Однако это все было поборено в течении недели схема устаканилась и работает уже около полугода. Возможно меня поправят - указав на какието другие пути увязки с M$ SQL/Sybase/Oracle и прочая.... Тут все просто- основная причина использования dbtcp - отсутствие поддержки Paradox в Unix-ODBC. Если кто знает более качественный и freeware-ный продукт подскажите ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.07.2003, 15:07 |
|
|
start [/forum/topic.php?fid=53&fpage=364&tid=2008151]: |
0ms |
get settings: |
7ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
others: | 278ms |
total: | 401ms |
0 / 0 |