2016-06-10 4 views
0

Вот моя проблема, мой код просто подключиться к базе данных выполнить запрос и получить некоторую строкуDBD :: JDBC с Postgres

Я могу подключиться к базе данных, но проблема в том, когда я хочу, чтобы выполнить запрос здесь код

my $url = "jdbc:sqlserver://x.x.x.x\\db"; 

my $dbh = DBI->connect("dbi:JDBC:hostname=localhost;port=$opt_P;url=$url", 
    test, xxx, {RaiseError => 4, PrintError => 4}); 

$query = "SELECT setting FROM pg_catalog.pg_settings 
      WHERE name = 'server_version'"; 
$sth = $dbh->prepare ($query) or die "prepare failed\n"; 
print "Got here without dying2\n"; 
$sth->execute() or die "unable to execute query $query error $DBI::errstr";` 

и я получил эту ошибку

DBD::JDBC::st execute warning: ERROR: syntax error at or near "RETURNING" Position: 74 at ./test

Странная вещь он работает с DBI: и ODBC JDBC работает с Java и PostgreSQL, но не PERL :(

+1

Это правильный код? Похоже, эта ошибка возникла при запуске совершенно другого запроса. –

+0

Я не помещал все переменные init и другие вещи, потому что вы не видите «Got here without dying2»? – Wanexa

ответ

1

проблема решена с этой версии JDBC42 Postgresql Driver, версия 9.4.1211

Смежные вопросы