问题标签 [pg-jdbc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Postgres UUID JDBC 不工作
用于 postgres 的最新 Java JDBC 驱动程序声称原生支持 UUID;针对 Postgres 9.2 (mac) 工作。
实际上,当使用 PreparedStatement 时,我可以单步执行驱动程序代码,甚至可以遍历 AbstractJdbc3gStatement.java 中专门的“setUuid”函数。种种迹象表明,它应该“正常工作”。
但是,它不起作用。数据库抛出一个错误,我因此收到:
是的,确实,JDBC 驱动程序中的 setUuid 确实将其作为 bytea 发送:
是什么赋予了?实际数据库中是否需要一些魔法符文来祝福这种转换?
postgresql - 是否可以在 postgresql9.2 中使用 getBlob() 方法从 bytea 类型字段中读取数据
我正在使用postgresql 9.2
and ,当我从Bytea
(用于postgresql)
使用方法在字段中存储二进制大对象数据)读取数据时,getBlob()
但我得到了同样的错误
我知道我收到此错误是因为只有方法适用于 this(Bytea) 而getBinaryStream()
方法适用于类型字段。但是我有情况。所以我想知道,有没有办法从使用方法中读取数据。先感谢您。getBytes()
getBlob()
OID
Bytea
getBlob()
Postgresql9.2
connection-pooling - Mahout、PostgreSQL 和连接池
在 Mahout 0.9 中使用 PostgreSQL 作为数据源,我不断得到
WARN org.apache.mahout.cf.taste.impl.model.jdbc.AbstractJDBCDataModel - You are not using ConnectionPoolDataSource. Make sure your DataSource pools connections to the database itself, or database performance will be severely reduced.
警告。
这是真的 - 每个请求都会不断打开新的连接。
有什么方法可以使用PGConnectionPoolDataSource
吗PostgreSQLBooleanPrefJDBCDataModel
?
(目前我有no constructorfor arguments n Java::OrgApacheMahoutCfTasteImplModelJdbc::PostgreSQLBooleanPrefJDBCDataModel
错误)
java - 是否可以编写一个 jOOQ 转换器来应用于数组?
我有一个 postgres 数据库,其中包含一些类型为varchar[]
. jOOQ 和 pgjdbc-ng 不能很好地配合;jOOQ 的 DefaultBindContext 具有以下特点:
它将语句变量设置为"{\"value1\", \"value2\", \"etc\"}"
,这是您在查询中指定数组的方式。后来,pgjdbc-ng 有:
它期望语句中的值是 PGArray 类型或实际数组;它无法将数组的字符串表示强制转换为数组的字符串表示。:(
我正在尝试编写一个 jOOQ 转换器,它将在和之间进行String[]
转换PGArray
;理想情况下,这意味着 jOOQ 的 DefaultBindContext 可以很好地保留转换后的值,然后 pgjdbc-ng 将能够正确处理它。
但是,我一直无法编写允许我执行此操作的 jOOQ 模式配置。我尝试了以下变化:
没有任何运气;生成的表对象引用 a String[][]
,并且varchar[]
不匹配任何内容。即使我将其分解,以便强制类型匹配任何类型但<expression>
仅匹配我的列,并且转换器的类型java.lang.String
为.
这条隧道的尽头有没有光,还是我应该开始寻找迁移我的数据库?
java - 使用 pgjdbc-ng 作为 Postgres 的 Java 驱动程序的 SSL 连接
我在使用https://github.com/impossibl/pgjdbc-ng/连接到 Postgres 数据库时遇到了很大的问题。我需要这个库,因为我需要从数据库中获取异步通知。
我正在尝试使用 SSL 连接到远程数据库,我正在这样做:
但是,当我尝试这样做时,我得到一个IllegalStateException
. 这是堆栈跟踪:
之前,我使用的是标准库org.postgresql.Driver
,一切正常......
有人知道如何帮助我吗?
太感谢了!马可
jdbc - Pg-jdbc 使用现有的 RETURNING 子句在 Prepared Batch 上附加 RETURNING *
我正在使用 pg-jdbc/JDBI 执行准备好的批量插入到 Postgres 表中,以便使用显式 RETURNING 子句获取生成的 id 值列表:
准备好语句后,pg-jdbc 将RETURNING *
在现有RETURNING
子句之后盲目地附加一个额外的内容,从而导致以下格式错误的可恶:
如果我删除显式的 RETURNING 子句,则该语句可以正常工作;但是,它会导致返回目标表中的所有字段,这在许多已插入大量数据的情况下是非常不可取的。
有什么方法可以阻止 pg-jdbc 从事这种行为吗?
测试依赖:
java - LISTEN/NOTIFY pgconnection 出现故障 java?
我正在使用 PostgreSQL DB 并应用它的LISTEN/NOTIFY
功能。所以我的侦听器在我的 AS(应用程序服务器)上,并且我在我的数据库上配置了触发器,这样当对表执行 CRUD 操作时,NOTIFY
就会在 AS 上发送请求。
java中的监听器类:
因此,当我的 AS 启动时,我已配置在启动时调用侦听器类 ( @Startup annotation
) 并开始在频道上侦听。
现在,如果像测试我手动编辑数据库中的表,生成通知并且 LISTENER 接收它,那么这工作正常。
但是,当我以编程方式在表上发送 UPDATE 请求时,UPADTE 已成功执行,但 LISTENER 没有收到任何内容。
当我发送请求时,我感觉与 LISTENER 的连接断开了(它还与编辑实体建立了连接),但我不确定。我阅读了有关永久连接和池连接的信息,但无法决定如何进行。
我正在使用 pgjdbc ( http://impossibl.github.io/pgjdbc-ng/ ) jar 进行异步通知,因为 jdbc 连接需要轮询。
编辑:
当我使用标准 jdbc jar(而不是 pgjdbc)尝试使用上述侦听器进行轮询时,我会收到通知。
我这样做
PGNotification notif[] = con.getNotifications()
了,我收到了通知,但是像下面这样异步执行,我没有收到通知。
解决了:
函数执行完成后,我的侦听器超出了范围,因为我的侦听器具有函数范围。所以将它保存到我的启动 bean 类的成员变量中,然后它就可以工作了。
postgresql - PostgreSQL 循环通知
我已经使用 pgjdbc-ng 进行 Postgresql 监听和通知。
我想在循环中执行通知。
我的示例代码:
我希望这使用听:
但我只收到一条短信。
我想知道这是可能的。如果是这样,请教我。谢谢您的回答。
java - VACUUM ANALYZE 之后vacuum_count 和analyze_count 都为零
我编写了一个单元测试,它修改了一个表(INSERT
's 和DELETE
's),然后手动VACUUM
's 和ANALYZE
's 它,然后我查询pg_stat_user_tables
以确保它VACUUM
确实ANALYZE
有一些效果。
我使用以下 SQL:
对于常规表和
对于临时的。
尽管如此,当我运行我的示例时,我观察到vacuum_count
和analyze_count
都为零,并且该表包含许多死元组,例如:
为什么?
独立的代码示例如下:
javascript - Javascript自定义库问题
我看了又看,我还在摸不着头脑。如果我遗漏了一些明显的东西,我道歉。我试图创建一个我自己编写的自定义函数库(感谢 stackoverflow 帮助我解决了这个问题......)。然后我有一个在调用网页时加载的 javascript 文件,该文件又调用我的自定义库中的所述函数。
我有一个getConfig()
很明显的函数。它获取一个 JSON 文件,其中包含我的服务器的配置详细信息,该服务器托管我的所有 RESTful Web 服务。当我单步执行代码时,配置详细信息按预期返回,但是,当我全速加载网页时,配置对象返回为undefined
. 我认为这可能是一个时间问题,所以我把所有东西都包在一个$(document).ready(function())
块里,但不行。我什至尝试了一个window.onload = function(){}
块来确保在调用自定义库之前加载所有内容。没运气!它让我头脑清醒,因为我一生都无法弄清楚发生了什么。
我的自定义库文件看起来像这样的文件名xtendLibs.js
上面文件中调用各种函数的javascript文件长这样appts.js
我真的很难过。任何帮助将不胜感激。