On Fri, Aug 11, 2006 at 11:58:16AM +0200, Michael Meskes wrote: > > EXEC SQL CONNECT TO 'tcp:postgresql://192.168.0.123/xyz' USER jsb > > The correct syntax would be: > > EXEC SQL CONNECT TO tcp:postgresql://192.168.0.123/xyz USER jsb; The ECPG "Connecting to the Database Server" documentation does have an example for Unix sockets with quotes: EXEC SQL CONNECT TO 'unix:postgresql://sql.mydomain.com/mydb' AS myconnection USER john; Should that be changed? It's wrong on two counts as far as I can tell: with quotes the connection fails with a server error of FATAL: database "'unix:postgresql://sql.mydomain.com/mydb'" does not exist Without quotes the ECPG preprocessor fails with ERROR: unix domain sockets only work on 'localhost' but not on 'sql.mydom' I'm thinking that example should be: EXEC SQL CONNECT TO unix:postgresql://localhost/mydb AS myconnection USER john; Also, among the target formats the documentation includes: * an SQL string literal containing one of the above forms and the following paragraph says: In practice, it is probably less error-prone to use a (single-quoted) string literal or a variable reference. which might be the source of confusion here. -- Michael Fuhr