问题标签 [pgx]
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.
sql - Using jsonb_agg/jsonb_build_object to parse to inner structs
Whenever I try to get (select/scan) the Groups (outer struct) along with their Collaborators (inner structs), I'm getting the following error :
// sql: Scan error on column index ..., name "collaborators": unsupported Scan, storing driver.Value type []uint8 into type *[]User
I'm using sqlx (with pgx driver).
the code to fetch from db is :
This is the SQL query :
These are the structs :
I have a simple Group table , a User table and table which represents all users with Permissions to the group :
postgresql - 使用 psql 数组将问题迁移到 pq 到 pgx
这是我的旧代码:
如何用 pgx 做到这一点?
pgx.Array 似乎不起作用。
postgresql - 如何获取多主机配置和数据库集群故障转移
在 java 中,我们可以选择使用具有故障转移机制的多主机配置:
我们在 Go 中有这样的支持吗?连接字符串应该是什么样子?我看到没有维护lib/pq
如果它们支持多主机,或者连接字符串的外观,我没有找到任何关于jackc/pgx的信息。请如果有人可以提供一个例子。
postgresql - 使用 Postgres 在 Google App Engine 上运行 API
我正在尝试使用 Go+Gin+PGX 连接到我的 GAE Postgres SQL 数据库。我激活了 Postgres SQL api,这个程序在我的本地机器上运行,但不在 GAE 上运行。我认为它没有通过 pgx 连接数据库,但我不确定。
main.go
在我的本地机器和实例上工作,psql
但在部署到 GAE 后无法通过 GCP SQL 实例中的公共 IP 连接到 db。我已经修改了我的工作代码来修复 MWE。
如果我使用 Postman 执行 GET 到 GAE 网站,那么我会得到
相应的 GAE 错误堆栈跟踪示例是
当我查看日志时,我看到...
amazon-web-services - Postgres 和 Golang 与 pgx 池:如何刷新密码?
我有一个带有 postgres 的 RDS 实例,我通过 IAM 用户进行身份验证。密码是每 15 分钟刷新一次的令牌:
但是,我已经看到令牌过期后连接池引发身份验证错误的问题,并且我没有找到任何好的方法。
我在想的是创建一个函数GetPool
并将其注入到我的存储库中,这个函数将返回一个 Pool 对象pgxpool.Pool
:
getConfig
内部将调用BuildAuthToken
,但仅每 15 分钟一次(伪代码):
因此,如果 15 分钟过去了,我将重新感染令牌,否则我将使用我已经拥有的令牌。这将是最终的解决方案
那么这种方法效率低吗?有更好的方法吗?谢谢
postgresql - 使用golang连接到谷歌云VM实例上的postgres?
我正在使用 Golang (github.com/jackc/pgx/v4) 尝试连接到我的计算引擎 VM 实例,但没有任何运气,"Unable to connect to database: failed to connect to host=[IP] user=postgres database=postgres: dial error (dial tcp 127.0.0.1:5433: connectex: No connection could be made because the target machine actively refused it.)"
在 GCP 上安装了 postgres 之后:https ://cloud.google.com /社区/教程/设置-postgres
在我使用的 golang 中pgx.Connect()
,这是我传递的 DSN: dsn = "pgsql:host=[My external VM IP on GCP];port=5432;dbname=[DB name];user=postgres;password=[my pass]"
我有一种有趣的感觉,我需要连接到一个实例 ID,但是在尝试访问 GCP 上的 VM 时,没有关于我传递的正确主机或正确 DSN 格式的文档。
arrays - 在 Pgx 中运行 SELECT * FROM 表查询?
我正在使用 PostgreSQL,并且我正在尝试在 Pgx 中运行 SELECT * FROM 查询。
我似乎无法降低迭代,因为它只返回表中的最后一个键。我还尝试在运行 echo HTTP 服务器库时将其作为 JSON 提供。
main.go 函数(从我的数据库连接文件中导入 connection.Conn)
预期产出
实际输出
有什么帮助吗?
go - 使用 pgx 将查询值解析为子结构
在 Go 和 pgx 中我很新。有没有办法轻松解析查询中的子结构值?
所以我做了一个加入查询,如:
然后我的结构是
如何将行中返回的数据解析到我的 Rdr 结构中。我需要将正确的字段解析到联系人中,最好是同时解析,但我不知道该怎么做。我看不到 Scan 会如何做到这一点。我们正在查看 FieldDescriptions 和 Values,但它变得非常混乱。有没有简单/常用的方法来做到这一点?我想这是一个非常普遍的问题。
postgresql - 带有 golang pgx 的 postgres 枚举
假设我有一个golang
用于pgx
连接postgres
数据库的微服务。
我有一个具有枚举类型的数据结构:
所以当我尝试插入一条记录时:
它失败了
我找到了一个 pgx 类型enum_array,但我不知道如何使用它。
- 在 golang 中使用 pgx 在 postgres 中使用枚举的正确方法是什么?