powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как вызвать функцию из dblink?
7 сообщений из 7, страница 1 из 1
Как вызвать функцию из dblink?
    #39433591
Константин Сергеевич Дерерк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте,

При попытке вызвать функцию из dblink пишет вот такую ошибку:

Код: sql
1.
2.
3.
ERROR: syntax error at end of input
SQL-состояние: 42601
Контекст: Error occurred on dblink connection named "unnamed": could not execute query.
...
Рейтинг: 0 / 0
Как вызвать функцию из dblink?
    #39433597
Константин Сергеевич Дерерк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
так работает:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT ti.num, ti.ip
(SELECT * FROM 
dblink('host='||ti.ip||'
                dbname=postgres
                port=5432
                user=usermon 
                password=password1'::text, 
		'SELECT id FROM remote_table where num = '''||idx.num'''  ') q (id bigint))
FROM tableip ti 
...
Рейтинг: 0 / 0
Как вызвать функцию из dblink?
    #39433601
Константин Сергеевич Дерерк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А когда вместо селекта из таблицы селект из функции - не работает:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT ti.num, ti.ip
(SELECT * FROM 
dblink('host='||ti.ip||'
                dbname=postgres
                port=5432
                user=usermon 
                password=password1'::text, 
		'SELECT func1('''||idx.num'''  ') q (id integer))
FROM tableip ti 
...
Рейтинг: 0 / 0
Как вызвать функцию из dblink?
    #39433604
Константин Сергеевич Дерерк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Константин Сергеевич Дерерквот так точнее:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
SELECT ti.num, ti.ip
(SELECT * FROM 
dblink('host='||ti.ip||'
                dbname=postgres
                port=5432
                user=usermon 
                password=password1'::text, 
		'SELECT func1('''||idx.num||'''  ') q (id integer))
FROM tableip ti 
...
Рейтинг: 0 / 0
Как вызвать функцию из dblink?
    #39433611
ursido
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Константин Сергеевич Дерерк,

Делаем Ваше домашнее задание:

1. Читаем славный RTFM . (Грязный хак: ищем по странице код 42601)
2. Считаем, сколько скобочек передаем в качестве аргумента. Сделать вывод на тему: "Может ли работать функция без закрывающей скобочки" как-нибудь сами.
...
Рейтинг: 0 / 0
Как вызвать функцию из dblink?
    #39433618
Константин Сергеевич Дерерк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ursido2. Считаем, сколько скобочек передаем в качестве аргумента. Сделать вывод на тему: "Может ли работать функция без закрывающей скобочки" как-нибудь сами.


А вы правы!!!

Добавил скобочку - заработало!


Благодарю, товарищ!
...
Рейтинг: 0 / 0
Как вызвать функцию из dblink?
    #39433647
ursido
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Константин Сергеевич Дерерк,

БЛДЖАД! Пункт 1 так и остался невыполненным.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Как вызвать функцию из dblink?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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