如何让 PostgreSQL DBLink 连接与 JDBC 一起工作?
How can I get PostgreSQL DBLink connections to work with JDBC?
我无法在我的 springboot "java"(实际上是 kotlin)应用程序中获得 named/unamed dblink 连接。我正在用科特林编写我的代码。代码如下所示。
var result = jdbcTemplate.queryForObject<String>("SELECT dblink_connect('myTestConnectionName'," + myCloudServerConnectionString + ");")
println(result) // prints "OK" meaning that it ran okay I believe.
var result2 = jdbcTemplate.queryForObject<String>("SELECT dblink_get_connections();")
println(result2) // prints "null" meaning there are no dblink connections.
我在 PSQL 和 DBeaver 中手动 运行 SQL 并且工作正常。当我 运行 "dblink_get_connections" sql 时,我将看到命名连接。它只在我的 springboot 应用程序中不起作用。
有谁知道我可以做些什么来解决它?
调用dblink_connect()
需要交易。
您的代码打开并立即关闭它。 dblink_get_connections
在另一个事务中执行。
您可以在您的方法上使用 @Transactional
来更改此行为。
我无法在我的 springboot "java"(实际上是 kotlin)应用程序中获得 named/unamed dblink 连接。我正在用科特林编写我的代码。代码如下所示。
var result = jdbcTemplate.queryForObject<String>("SELECT dblink_connect('myTestConnectionName'," + myCloudServerConnectionString + ");")
println(result) // prints "OK" meaning that it ran okay I believe.
var result2 = jdbcTemplate.queryForObject<String>("SELECT dblink_get_connections();")
println(result2) // prints "null" meaning there are no dblink connections.
我在 PSQL 和 DBeaver 中手动 运行 SQL 并且工作正常。当我 运行 "dblink_get_connections" sql 时,我将看到命名连接。它只在我的 springboot 应用程序中不起作用。
有谁知道我可以做些什么来解决它?
调用dblink_connect()
需要交易。
您的代码打开并立即关闭它。 dblink_get_connections
在另一个事务中执行。
您可以在您的方法上使用 @Transactional
来更改此行为。