PostgreSQL dblink mit benannten verbindungen

dblink scheint nicht zu funktionieren, wenn ich eine benannte Verbindung zu einem remote-server oder eine Unbenannte Verbindung und dann auf trennen. Es funktioniert gut, wenn ich eine Unbenannte Verbindung mit einer Verbindungszeichenfolge in dblink(). Es scheint die Verbindung in Ordnung, aber meine Verbindung ist nicht verfügbar, wenn ich versuche, es zu benutzen. Irgendwelche Ideen auf, wie man diese arbeiten mit benannten verbindungen?

Unbenannte mit connstr gut Funktioniert:

SELECT testtable.*
FROM   dblink('dbname=testdb port=5432 host=192.168.1.1 user=usr password=pw'
             ,'SELECT * FROM testtable')
AS     testtable(testtable_id integer, testtable_name text);

Zurück: Zwei Spalten als erwartet.

Namens nicht Funktioniert:

Verbinden:

SELECT dblink_connect('myconn'
           ,'dbname=testdb port=5432 host=192.168.1.1 user=usr password=pw');

Rückgabe: "OK"

Abfrage:

SELECT testtable.* FROM dblink('myconn', 'SELECT * FROM testtable')
AS     testtable(testtable_id integer, testtable_name text);

Gibt:

ERROR:  could not establish connection
DETAIL:  missing "=" after "myconn" in connection info string

********** Error **********

ERROR: could not establish connection
SQL state: 08001
Detail: missing "=" after "myconn" in connection info string

Trennen:

SELECT dblink_disconnect('myconn');

Gibt:

ERROR:  connection "myconn" not available

********** Error **********

ERROR: connection "myconn" not available
SQL state: 08003

Unbenannte mit _connect und _disconnect nicht Funktioniert:

Verbinden:

SELECT dblink_connect('dbname=testdb port=5432 host=192.168.1.1
                                               user=usr password=pw');

Rückgabe: "OK"

Abfrage:

SELECT testtable.* FROM dblink('SELECT * FROM testtable')
AS testtable(testtable_id integer, testtable_name text);

Gibt:

ERROR:  connection not available

********** Error **********

ERROR: connection not available
SQL state: 08003

Trennen:

SELECT dblink_disconnect();

Gibt:

ERROR:  connection not available

********** Error **********

ERROR: connection not available
SQL state: 08003

InformationsquelleAutor bendiy | 2012-03-26

Schreibe einen Kommentar