问题标签 [go-pg]
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.
postgresql - 在 Postgres 中使用 DEFAULT 关键字
我使用这个库https://github.com/go-pg/pg。
我有一个简单的模型。
使用此代码,我试图将一个实例插入到表中。
插入后,我在表中看到 created_at == NULL 的行。为什么不default:now()
工作?
我试图设置它,sql:"default:now()"
但它没有帮助。
我的 PostgreSQL 版本是:在 Ubuntu 上运行的 11.66
这是创建表日志:
"chat_admins" ("id" bigserial, "tg_id" bigint, "created_at" timestamptz NOT NULL DEFAULT now(), PRIMARY KEY ("id"))
这是插入后的heroku数据剪辑:
sql - 仅当所有行都存在时才更新多行
我只想在数据库中都存在多行的情况下更新多行,如何做到这一点?
在这种情况下,如果任何一本书不存在,它不会阻止另一本书的更新。
books
表如下所示:
假设我们只有一本书存储在数据库中:
如果我想更新 2 本书并且其中一本没有存储在数据库中,我想取消整个更新过程 - 保留表格而不进行任何更改。
下面的查询应该什么都不更新:
是否可以在不使用事务的情况下实现这一目标?
提前感谢您的帮助!
database - 使用 go-pg 从 Postgres 中检索虚拟列
我正在使用go-pg
(https://github.com/go-pg/pg)和这段代码:
一切正常,但我需要添加一个像这样的“虚拟”列:
我尝试使用:
但:
go-pg 抱怨:
error="pg: can't find column=info in model=Book (try discard_unknown_columns)"
go-pg 不再包含列
id
并且name
在查询中:concat...
仅!
我可以理解,因为现在 go-pg 不知道如何绑定数据,但我真的需要只能从数据库中检索的字符串。
有办法吗?
我可以使用下面这样的自定义类型吗?
这有意义吗?
go - 为什么 go-pg 中的插入时间会改变
我想使用 go-pg 将时间插入数据库,但插入后值会发生变化。
的值date
是2020-03-18 00:00:00 +0700 WIB
并插入使用go-pg
date
插入后的值为2020-03-17 17:00:00+00:00:00
看起来是因为时区
如何在不受时区或其他任何影响的情况下将时间完全插入原始值?
sql - Golang、postgresql、go-pg、UNION ALL 和 WITH
我正在使用 Golang、PostgreSQL 和 go-pg ( https://github.com/go-pg/pg )。
我需要这个查询:
而是go-pg
不断给我这个:
我正在使用这段代码:
我能做些什么来解决这个问题?
postgresql - 如何正确使用 go-pg 执行 queryOne?
我想queryOne
使用go-pg
它只返回一行到一个对象而不是数组。
这是我的简单代码:
我希望它只返回reportMessage 而不是一个数组。
这是我的错误:
如何只查询一行并将其返回给对象而不是数组?
go - go-pg 如何覆盖链接表
具有以下规格的三个表:
和
我创建了一个由以下结构指定的链接表:
我想选择所有设备及其功能(如果有)。像下面这样的查询对我有用:
postgresql - go-pg - 读取 upsert 后返回的 ID
我在 go-pg 中创建了一个这样的 upsert:
现在我想阅读返回的 id。我该怎么做?我见过的所有示例都忽略了插入/更新查询返回的结果。
postgresql - 建立关系时的别名表
我有一个表TableWithLongerName,它具有与TableWithLongName 的连接外键。使用 Go-Pg,我想检索 TableWithLongerName 的数据,其中嵌入了来自 TableWithLongName 的数据。但不幸的是,TableWithLongName 有列 VeryLongColumnName。
当我运行query.Relation("TableWithLongName")
它返回错误
我在 TableWithLongName 中为域创建了别名,但它被覆盖了。