问题标签 [postgresql-11]
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.
go - 如何查询和处理使用 go.uuid 创建并插入 PostgreSQL 11 的 UUID?
我在 PostgreSQL 表中插入了一个使用 go.uuid 创建的 UUID:
实际上在 postgreSQL 数据库中插入了一行:
为了使用 golang 变量进行查询,我首先尝试使用准备好的语句。首先,使用 db.PrepareContext :
其执行保持“空闲”,处于待机状态,没有结束并产生任何输出:
然后我用 db.Prepare() 尝试了这种方式:
在第二种情况下,执行似乎成功结束,但我不知道如何将 sql.Result 转换为可以处理的正确形式,例如简单地使用 fmt.Println() 显示或获取其他处理。那么...如何正确查询和处理使用 go.uuid 创建并插入 PostgreSQL 11 的 UUID?
期待您的帮助。马可
postgresql - Postgres 顺序错误
Postgres order by 得到错误的结果:
如您所见,“ http://nautil.us/issue/70/variables/aging-is-a-communication-breakdown ”存在问题。它没有正确排序。
我使用 Python 和 psycopg2 将解析结果保存在 Postgres 中,并指出,我无法测试排序,导致 Postgres 返回 order by 错误。
UPD:再现:
x86_64-pc-linux-gnu 上的 PostgreSQL 11.2 (Debian 11.2-1.pgdg90+1),由 gcc (Debian 6.3.0-18+deb9u 1) 6.3.0 20170516,64 位编译
bash - 从 postgres 函数/过程/触发器执行 Bash 脚本(Shell 脚本)
exec /home/postgres/test.sh 及其显示语法错误。您能否帮助如何将 bash 脚本调用到 postgres 功能/程序中
sql - 如何在不与 postgresql 11.2 冲突的情况下解决重复键错误
插入代码
如果我像上面那样插入,那么它工作得很好。而不是 CONFLICT 我使用了以下功能
这需要一些论据
但是当我在同一 id(12) 内更新 lts_i、lts_O 和 p_status
然后它也显示重复键错误。我不想在这里使用 CONFLICT,因为我在同一个表上有一个 UPDATE RULE,并且 postgresql 已经说“该事件是 SELECT、INSERT、UPDATE 或 DELETE 之一。请注意,包含 ON CONFLICT 子句的 INSERT不能用于具有 INSERT 或 UPDATE 规则的表。请考虑改用可更新视图。”
更新规则
如果 lts_i、lts_o 或 p_status 已更新,则将 current_date 插入同一员工表中的“今天”字段。
但绝对我需要规则,在这种情况下我该怎么办?
任何帮助,将不胜感激。谢谢。
node.js - 如何使用 datetime INTERVAL 编写 nodeJS 查询以获取 postgreSQL 数据库的最后 24 小时记录
我正在使用CURRENT_TIMESTAMP - INTERVAL '24 hours'
我的.js
文件中的 PostgreSQL DB 获取最近 24 小时的记录。但是由于查询中的单引号,我无法正确编写它。
我正在从 PostgreSQL 数据库中获取记录,并使用 angular 6 以条形图的形式显示它们。
这是我试图从.js
文件运行以获取最近 24 小时记录的查询:
查询的最终结果应该是数据库最近的 24 小时记录。目前我收到错误
意外号码
python - Python3 psycopg2:使用返回“没有要获取的结果”
我正在使用:
- psvcopg2
- python3.6
- postgresql-11.2
- 库本图 18.10
我正在成功插入一行,但 cursor.fetchall() 正在提升
即使我在 SQL 中使用 RETURNING 来检索 id。
我发现了 cursor.description 但它是空的(cursor.description == None)。
SQL 在 psql 终端中正常使用,根据请求返回 id。
蟒蛇代码:
postgresql - Postgres 提交可以存在于具有异常块的过程中吗?
我很难理解 Postgres 中的事务。我有一个可能会遇到异常的过程。到目前为止,我可能希望在程序的某些部分提交我的工作,以便在出现异常时不会回滚。
我希望在捕获异常并将异常信息插入日志记录表的过程结束时有一个异常处理块。
我将问题归结为一个简单的过程,如下所示,该过程在 PostgreSQL 11.2 上失败了
为什么这个存储过程不起作用?为什么我们从来没有看到它的输出,raise notice 'B'
而是进入了异常块?是否可以使用 Postgres 11 存储过程执行我上面描述的操作?
编辑:这是一个完整的代码示例。将上述完整代码示例(包括create procedure
andcall
语句)粘贴到 sql 文件中,并在 Postgres 11.2 数据库中运行以进行重现。所需的输出将是函数打印A
then B
,但它会打印A
thenC
以及异常信息。
另请注意,如果您注释掉所有异常处理块,使得该函数根本不捕获异常,则该函数将输出“A”然后“B”而不会发生异常。这就是为什么我将这个问题命名为“在具有异常块的过程中是否存在 Postgres 提交?”
postgresql-11 - 如何在 postgres 中使用序列名获取表名和列名?
我知道序列名称,但我不知道它的表名和列名。所以请帮助我如何找到它。
postgresql - 导入包含索引中使用的函数的 SQL 转储时出错
在 PostgreSQL 11 上,我定期转储备份快照,有时将它们导入具有相同设置的开发系统。那里没什么好看的:
但是,转储中的两个索引在还原时会引发错误。我把它归结为以下转储,所有无关的东西都被剥离了:
恢复此转储会产生以下错误:
以下解决了这个问题:add_days
模式前缀如下:
结案?不完全的。我想了解这里的问题。
我猜,除非带有显式前缀前缀,否则SELECT pg_catalog.set_config('search_path', '', false);
pg_dump 生成的行会阻止被发现。add_days
但是,为什么以下替代方法(添加 search_path)不起作用?
这会触发一个完全不同的错误:
好吧,现在我很困惑。有人能告诉我这里发生了什么吗?