Короче справился с проблемой - подправил исходник драйвера, а точнее функцию получения версии (файл c:\Qt\2010.05\qt\src\sql\drivers\psql\qsql_psql.cpp), потом перекомпильнул и все заработало
static QPSQLDriver::Protocol getPSQLVersion(PGconn* connection)
{
QPSQLDriver::Protocol serverVersion = QPSQLDriver::Version6;
PGresult* result = PQexec(connection, "select version()");
int status = PQresultStatus(result);
if (status == PGRES_COMMAND_OK || status == PGRES_TUPLES_OK) {
QString val = QString::fromAscii(PQgetvalue(result, 0, 0));
QRegExp rx(QLatin1String("(\\d+)\\.(\\d+)"));
rx.setMinimal(true); // enforce non-greedy RegExp
if (rx.indexIn(val) != -1) {
int vMaj = rx.cap(1).toInt();
int vMin = rx.cap(2).toInt();
switch (vMaj) {
case 7:
switch (vMin) {
case 0:
serverVersion = QPSQLDriver::Version7;
break;
case 1:
case 2:
serverVersion = QPSQLDriver::Version71;
break;
default:
serverVersion = QPSQLDriver::Version73;
break;
}
break;
case 8:
switch (vMin) {
case 0:
serverVersion = QPSQLDriver::Version8;
break;
case 1:
serverVersion = QPSQLDriver::Version81;
break;
case 2:
default:
serverVersion = QPSQLDriver::Version82;
break;
}
break;
default:
break;
}
//////////////////////////////////////////////////////////////////
//добавлено (для новой версии 9.0)
if ( vMaj == 9 ) serverVersion = QPSQLDriver::Version82;
/////////////////////////////////////////////////////////////////
}
}
PQclear(result);
if (serverVersion < QPSQLDriver::Version71)
qWarning("This version of PostgreSQL is not supported and may not work.");
return serverVersion;
}