Lists: | pgsql-ru-general |
---|
From: | Genix <genix(at)list(dot)ru> |
---|---|
To: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | соединение между СУБД |
Date: | 2005-04-05 07:21:03 |
Message-ID: | 42523C5F.4010606@list.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
Приветствую!
Подскажите пожалуйста, возможно ли соединение между двумя разными
физическими серверами?
т.е. например, в базе данных создается алиас, который ссылается на
таблицу/вид в другой базе на другом (физическом) сервере.
Такое возможно?
--
У каждого в башке свои тараканы...
From: | "Viktor Vislobokov" <vvislobokov(at)parma-telecom(dot)ru> |
---|---|
To: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | Re: соединение |
Date: | 2005-04-05 08:44:56 |
Message-ID: | 42525008.3080202@lukoilperm.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
FAQ читал?
Вопрос 4.18
http://www.linuxshare.ru/postgresql/FAQ_russian.html
> Приветствую!
>
> Подскажите пожалуйста, возможно ли соединение между двумя разными
> физическими серверами?
>
> т.е. например, в базе данных создается алиас, который ссылается на
> таблицу/вид в другой базе на другом (физическом) сервере.
>
> Такое возможно?
>
--
С уважением, Виктор
From: | Genix <genix(at)list(dot)ru> |
---|---|
To: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | Re: соединение |
Date: | 2005-04-05 12:18:03 |
Message-ID: | 425281FB.5090506@list.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
Viktor Vislobokov wrote:
> FAQ читал?
> Вопрос 4.18
> http://www.linuxshare.ru/postgresql/FAQ_russian.html
нашел тут в интернете FAQ по PostgreSQL 7.2, там меня заинтересовал один
вопрос, который я очень долго искал как реализовать в Informix'е:
CREATE TABLE foo (fooid int, foosubid int, fooname text);
CREATE FUNCTION getfoo(int) RETURNS SETOF foo AS $$ SELECT * FROM foo
WHERE fooid = $1;$$ LANGUAGE SQL;
SELECT * FROM getfoo(1) AS t1;
SELECT * FROM foo WHERE foosubid IN (select foosubid from
getfoo(foo.fooid) z where z.fooid = foo.fooid);
CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1);
SELECT * FROM vw_getfoo;
пытаюсь выполнить этот запрос, ругается на
"ERROR: syntax error at or near "$" at character 225"
т.е. на первый $$.
Не знаете, что я делаю не так?
http://phpclub.ru/postgresql/doc/queries-table-expressions.html
--
У каждого в башке свои тараканы...
From: | Genix <genix(at)list(dot)ru> |
---|---|
To: | |
Cc: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | Re: соединение |
Date: | 2005-04-05 12:35:33 |
Message-ID: | 42528615.4060909@list.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
Genix wrote:
> CREATE TABLE foo (fooid int, foosubid int, fooname text);
> CREATE FUNCTION getfoo(int) RETURNS SETOF foo AS $$ SELECT * FROM foo
> WHERE fooid = $1;$$ LANGUAGE SQL;
> SELECT * FROM getfoo(1) AS t1;
> SELECT * FROM foo WHERE foosubid IN (select foosubid from
> getfoo(foo.fooid) z where z.fooid = foo.fooid);
> CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1);
> SELECT * FROM vw_getfoo;
>
> пытаюсь выполнить этот запрос, ругается на
> "ERROR: syntax error at or near "$" at character 225"
> т.е. на первый $$.
>
> Не знаете, что я делаю не так?
оказалось надо вместо $$ писать 'select ... '
а как же быть с многострочным кодом на SQL?
--
У каждого в башке свои тараканы...
From: | Oleg Bartunov <oleg(at)sai(dot)msu(dot)su> |
---|---|
To: | Genix <genix(at)list(dot)ru> |
Cc: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | Re: соединение |
Date: | 2005-04-05 12:36:31 |
Message-ID: | Pine.GSO.4.62.0504051634420.15865@ra.sai.msu.su |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
---559023410-1489380298-1112704591=:15865
Content-Type: TEXT/PLAIN; charset=koi8-r; format=flowed
Content-Transfer-Encoding: 8BIT
On Tue, 5 Apr 2005, Genix wrote:
> Viktor Vislobokov wrote:
>> FAQ читал?
>> Вопрос 4.18
>> http://www.linuxshare.ru/postgresql/FAQ_russian.html
>
> нашел тут в интернете FAQ по PostgreSQL 7.2, там меня заинтересовал один
> вопрос, который я очень долго искал как реализовать в Informix'е:
>
> CREATE TABLE foo (fooid int, foosubid int, fooname text);
> CREATE FUNCTION getfoo(int) RETURNS SETOF foo AS $$ SELECT * FROM foo WHERE
> fooid = $1;$$ LANGUAGE SQL;
> SELECT * FROM getfoo(1) AS t1;
> SELECT * FROM foo WHERE foosubid IN (select foosubid from getfoo(foo.fooid) z
> where z.fooid = foo.fooid);
> CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1);
> SELECT * FROM vw_getfoo;
>
> пытаюсь выполнить этот запрос, ругается на
> "ERROR: syntax error at or near "$" at character 225"
> т.е. на первый $$.
>
> Не знаете, что я делаю не так?
Доллар-квоттинг появился в 8-ке ! У тебя что стоит ?
Вот у меня:
aa=# CREATE TABLE foo (fooid int, foosubid int, fooname text);
CREATE TABLE
aa=# CREATE FUNCTION getfoo(int) RETURNS SETOF foo AS $$ SELECT * FROM foo WHERE fooid = $1;$$ LANGUAGE SQL;
CREATE FUNCTION
aa=# SELECT * FROM getfoo(1) AS t1;
fooid | foosubid | fooname
-------+----------+---------
(0 rows)
aa=# SELECT * FROM foo WHERE foosubid IN (select foosubid from getfoo(foo.fooid) z where z.fooid = foo.fooid);
fooid | foosubid | fooname
-------+----------+---------
(0 rows)
aa=# CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1);
CREATE VIEW
aa=# SELECT * FROM vw_getfoo;
fooid | foosubid | fooname
-------+----------+---------
(0 rows)
>
> http://phpclub.ru/postgresql/doc/queries-table-expressions.html
>
>
Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg(at)sai(dot)msu(dot)su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83
---559023410-1489380298-1112704591=:15865--
From: | Genix <genix(at)list(dot)ru> |
---|---|
To: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | Re: соединение |
Date: | 2005-04-05 12:41:05 |
Message-ID: | 42528761.8080808@list.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
Oleg Bartunov wrote:
>> Не знаете, что я делаю не так?
>
>
> Доллар-квоттинг появился в 8-ке ! У тебя что стоит ?
сейчас 7.4.7, хотя планирую перетаскиваться именно на 8-ку
/me бьёт себя пяткой в грудь от злости: документация, на которую я
приводил ссылку и из которой я цитировал пример была именно по 8-ке,
просто пункт носил номер 7.2, поэтому видимо и решил что документация по
7.2 $)
--
У каждого в башке свои тараканы...
From: | Oleg Bartunov <oleg(at)sai(dot)msu(dot)su> |
---|---|
To: | Genix <genix(at)list(dot)ru> |
Cc: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | Re: соединение |
Date: | 2005-04-05 13:30:50 |
Message-ID: | Pine.GSO.4.62.0504051727181.15865@ra.sai.msu.su |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
---559023410-2008730550-1112707850=:15865
Content-Type: TEXT/PLAIN; charset=koi8-r; format=flowed
Content-Transfer-Encoding: 8BIT
Кстати, у меня есть место для моих заметок по pgsql
http://www.sai.msu.su/~megera/oddmuse/index.cgi/pgsql_tutorial_ru
Может чего и пригодится.
Пока не понимаю во что это должно превратиться :)
Олег
On Tue, 5 Apr 2005, Genix wrote:
> Oleg Bartunov wrote:
>
>>> Не знаете, что я делаю не так?
>>
>>
>> Доллар-квоттинг появился в 8-ке ! У тебя что стоит ?
>
> сейчас 7.4.7, хотя планирую перетаскиваться именно на 8-ку
>
> /me бьёт себя пяткой в грудь от злости: документация, на которую я приводил
> ссылку и из которой я цитировал пример была именно по 8-ке, просто пункт
> носил номер 7.2, поэтому видимо и решил что документация по 7.2 $)
>
>
Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg(at)sai(dot)msu(dot)su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83
---559023410-2008730550-1112707850=:15865--
From: | Nick Gazaloff <nick(at)sbin(dot)org> |
---|---|
To: | |
Cc: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | Re: соединение |
Date: | 2005-04-05 14:15:04 |
Message-ID: | 42529D68.9080607@sbin.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
Genix wrote:
> Viktor Vislobokov wrote:
>
>> FAQ читал?
>> Вопрос 4.18
>> http://www.linuxshare.ru/postgresql/FAQ_russian.html
>
>
> нашел тут в интернете FAQ по PostgreSQL 7.2, там меня заинтересовал один
> вопрос, который я очень долго искал как реализовать в Informix'е:
>
> CREATE TABLE foo (fooid int, foosubid int, fooname text);
> CREATE FUNCTION getfoo(int) RETURNS SETOF foo AS $$ SELECT * FROM foo
> WHERE fooid = $1;$$ LANGUAGE SQL;
> SELECT * FROM getfoo(1) AS t1;
> SELECT * FROM foo WHERE foosubid IN (select foosubid from
> getfoo(foo.fooid) z where z.fooid = foo.fooid);
> CREATE VIEW vw_getfoo AS SELECT * FROM getfoo(1);
> SELECT * FROM vw_getfoo;
>
> пытаюсь выполнить этот запрос, ругается на
> "ERROR: syntax error at or near "$" at character 225"
> т.е. на первый $$.
>
> Не знаете, что я делаю не так?
Откуда известно, что FAQ пр 7.2? Тут есть табличная функция (7.3,
по-моему) и HERE-DOC quoting (8.0). В более ранних работать не будет.
--
С уважением,
технический директор ООО "ЦСА"
Николай Газалов
www.sbin.org
+7 8793 365584
(GPG Key ID: 4396B2D0)
From: | Markus Bertheau <twanger(at)bluetwanger(dot)de> |
---|---|
To: | Genix <genix(at)list(dot)ru> |
Cc: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | Re: соединение |
Date: | 2005-04-05 23:56:23 |
Message-ID: | 1112745383.7195.6.camel@localhost.localdomain |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
В Втр, 05/04/2005 в 16:35 +0400, Genix пишет:
> а как же быть с многострочным кодом на SQL?
Вот так:
CREATE FUNCTION foo() AS '
DECLARE
whatever int;
BEGIN
... CODE ...
END
';
все просто :)
Маркус
--
Markus Bertheau <twanger(at)bluetwanger(dot)de>
From: | Genix <genix(at)list(dot)ru> |
---|---|
To: | |
Cc: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | Re: соединение |
Date: | 2005-04-06 04:47:27 |
Message-ID: | 425369DF.8010806@list.ru |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
Nick Gazaloff wrote:
> Откуда известно, что FAQ пр 7.2? Тут есть табличная функция (7.3,
> по-моему) и HERE-DOC quoting (8.0). В более ранних работать не будет.
ну ошибся, с кем не бывает ;)
просто заголовок страницы звучит так: PostgreSQL: 7.2. Table....., вот и
подумал сначала что документ именно по 7.2
--
У каждого в башке свои тараканы...
From: | Oleg Bartunov <oleg(at)sai(dot)msu(dot)su> |
---|---|
To: | Genix <genix(at)list(dot)ru> |
Cc: | pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org> |
Subject: | Re: соединение |
Date: | 2005-10-14 08:50:19 |
Message-ID: | Pine.GSO.4.63.0510141247240.10366@ra.sai.msu.su |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-ru-general |
On Fri, 14 Oct 2005, Genix wrote:
> Viktor Vislobokov wrote:
>
>>> Подскажите пожалуйста, возможно ли соединение между двумя разными
>>> физическими серверами?
>>>
>>> т.е. например, в базе данных создается алиас, который ссылается на
>>> таблицу/вид в другой базе на другом (физическом) сервере.
>>>
>>> Такое возможно?
>
>> FAQ читал?
>> Вопрос 4.18
>> http://www.linuxshare.ru/postgresql/FAQ_russian.html
>
> я опять вернусь к этой теме.
> подскажите, а чтобы сделать выборку из базы лежащей на том же сервере тоже
> нужно использовать dblink, или можно обойтись штатными средствами? что-то я
> пока не нашел как.
какой ты доставучий :)
Hаписано ведь
4.17) Как выполнять запросы, использующие несколько баз данных?
Не существует способа создать запрос к базам данных отличным от текущей.
Поскольку PostgreSQL загружает системные каталоги специфичные для базы данных,
непонятно даже, как должен себя вести такой межбазовый запрос.
contrib/dblink позволяет запросы между базами, используя вызовы функций.
Разумеется, клиент может одновременно также устанавливать соедиенения с
различными базами данных и таких образом объединять информацию из них.
Я тебе рекомендую использовать схемы и не париться. Они практически ничем
не отличаются от базы.
Regards,
Oleg
_____________________________________________________________
Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
Sternberg Astronomical Institute, Moscow University (Russia)
Internet: oleg(at)sai(dot)msu(dot)su, http://www.sai.msu.su/~megera/
phone: +007(095)939-16-83, +007(095)939-23-83
>From pgsql-ru-general-owner(at)postgresql(dot)org Fri Oct 14 09:16:00 2005
X-Original-To: pgsql-ru-general-postgresql(dot)org(at)localhost(dot)postgresql(dot)org
Received: from localhost (av.hub.org [200.46.204.144])
by svr1.postgresql.org (Postfix) with ESMTP id 11F47D83CB
for <pgsql-ru-general-postgresql(dot)org(at)localhost(dot)postgresql(dot)org>; Fri, 14 Oct 2005 09:16:00 -0300 (ADT)
Received: from svr1.postgresql.org ([200.46.204.71])
by localhost (av.hub.org [200.46.204.144]) (amavisd-new, port 10024)
with ESMTP id 73349-03
for <pgsql-ru-general-postgresql(dot)org(at)localhost(dot)postgresql(dot)org>;
Fri, 14 Oct 2005 12:15:55 +0000 (GMT)
Received: from ecobank2.san.ru (ecobank.san.ru [213.242.34.70])
by svr1.postgresql.org (Postfix) with ESMTP id ECCDDD7931
for <pgsql-ru-general(at)postgresql(dot)org>; Fri, 14 Oct 2005 09:15:56 -0300 (ADT)
Received: from econom.exchange.econombank.com ([192.100.201.55] unverified) by ecobank2.san.ru with Microsoft SMTPSVC(5.0.2195.6713);
Fri, 14 Oct 2005 16:15:59 +0400
Received: from [192.100.201.108] (horohorin.headquarters.econombank.ru [192.100.201.108]) by econom.exchange.econombank.com with SMTP (Microsoft Exchange Internet Mail Service Version 5.5.2448.0)
id R0SMX501; Fri, 14 Oct 2005 16:15:58 +0400
Message-ID: <434FA1A6(dot)3000906(at)list(dot)ru>
Date: Fri, 14 Oct 2005 16:16:38 +0400
From: Genix <genix(at)list(dot)ru>
User-Agent: Mozilla Thunderbird 1.0.6 (X11/20050815)
X-Accept-Language: en-us, en
MIME-Version: 1.0
To: Oleg Bartunov <oleg(at)sai(dot)msu(dot)su>
Cc: pgsql-ru-general <pgsql-ru-general(at)postgresql(dot)org>
Subject: Re: =?KOI8-R?Q?=D3=CF=C5=C4=C9=CE=C5=CE=C9=C5?=
References: <42523C5F(dot)4010606(at)list(dot)ru> <42525008(dot)3080202(at)lukoilperm(dot)ru> <434F6ECC(dot)4030202(at)list(dot)ru> <Pine(dot)GSO(dot)4(dot)63(dot)0510141247240(dot)10366(at)ra(dot)sai(dot)msu(dot)su>
In-Reply-To: <Pine(dot)GSO(dot)4(dot)63(dot)0510141247240(dot)10366(at)ra(dot)sai(dot)msu(dot)su>
Content-Type: text/plain; charset=KOI8-R; format=flowed
Content-Transfer-Encoding: 8bit
X-OriginalArrivalTime: 14 Oct 2005 12:15:59.0452 (UTC) FILETIME=[095CA1C0:01C5D0B9]
X-Virus-Scanned: by amavisd-new at hub.org
X-Spam-Status: No, hits=1.436 required=5 tests=[AWL=0.010,
DNS_FROM_RFC_POST=1.376, FORGED_RCVD_HELO=0.05]
X-Spam-Level: *
X-Archive-Number: 200510/14
X-Sequence-Number: 413
Oleg Bartunov wrote:
> Не существует способа создать запрос к базам данных отличным от текущей.
спасибо, что открыли мне глаза.
в первом чтении я не обратил на это внимания!
--
У каждого в башке свои тараканы...