问题标签 [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.

0 投票
0 回答
1705 浏览

psql - 如何使用 psql 上传大文本文件?

我正在尝试使用 psql 工具上传一个以逗号分隔的大型文本文件。.txt 文件已经有大约 20 个列名。该文件大小约为 2GB,大约有 1400 万行。少数列大多是空的。

.txt 文件如下所示(表格):

我在 psql 中创建了一个新表,这里我们将其命名为“tablename”。我给表格的列名略有不同,但仍与现有列名的顺序相同。

然后我执行了以下命令来尝试将数据从我的文本文件复制到我刚刚创建的新表中:

我收到一条消息,显示“无法统计文件”和“未知错误”。

我也尝试过使用 pgAdmin 4 并得到相同的消息。我还应该注意我从这里得到了我的代码的最后一部分。

PS我对此很陌生。(但我真的很喜欢它!)

谢谢大家。

0 投票
0 回答
1618 浏览

postgresql - 在 postgresql 11 中动态选择 HASH 分区

如何编写从父(分区)表中选择的选择查询,使用 HASH 分区(Postgresql 11 中的新功能)进行分区,转换为从单个分区中选择所有记录?

示例:我想要这个

退回此计划

我知道的替代方案

  1. 按表达式PARTITION BY LIST (col1 % 15), ... FOR VALUES IN (0), 选择列表分区WHERE col1 % 15 = 0
  2. 使用辅助列来存储(缓存)表达式值

有没有更直接的方法?我想摆脱PARTITION BY LIST实际按 HASH 进行分区的情况,但要做到这一点,我需要一种方法来选择正确的分区,而无需编写动态 SQL 或使其比PARTITION BY LIST (hash_expression).

0 投票
2 回答
11106 浏览

postgresql - 尝试使用嵌套事务控制执行过程时出现“错误:无效的事务终止”

根据文档(https://www.postgresql.org/docs/current/app-psql.html),即使设置为关闭,PSQL 也会在任何尚未在事务块中的命令之前AUTOCOMMIT发出隐式并且是BEGIN本身不是一个BEGIN或其他事务控制命令,也不是一个不能在事务块内执行的命令,例如VACUUM. (不幸CALL的是,没有以与 相同的方式对待VACCUM)。而且,根据肖恩·托马斯(https://blog.2ndquadrant.com/pg-phriday-stored-procedures-postgres-11/),无效事务终止错误发生是因为不可能从过程中关闭当前事务(在本例中是由 PSQL 启动的事务)。我已经尝试了所有与事务控制相关的 PSQL 设置,但是所有这些设置都发生了无效的事务终止错误;即使 PSQL 处理的命令文件只包含CALL语句。

这是我正在调用的程序:

它在commit声明中失败;如果我将其注释掉,它会起作用。

0 投票
0 回答
234 浏览

arrays - 带有postgres后端属性错误的Django

已解决 目前我正在做我的第一个 django 项目。DB 正在对 Abaqus 输入文件的结构进行建模。这是代码

当我调用manage.py makemigrations(或只是 python)时,它会给我错误消息:

当我在测试脚本中导入 ArrayField 时,它可以工作:

我能够在没有 ArrayField 的情况下将我的类迁移到 TestDB。我的 Python 版本是 3.7.1,我的 Django 版本是 2.1.3

我的错误是什么?

编辑:样式和格式。感谢建议。编辑:已解决,但找不到如何标记

0 投票
1 回答
40 浏览

postgresql - 替换二维数组中的元素

给定一个二维数组

有没有办法用值 5 和 6替换[2:2][2:](the ) 处的切片?替换一个特定的值,所以我不知道如何处理这个。{{0,0}}array_replace

0 投票
3 回答
61 浏览

sql - 用另一列的总和更新列

我使用 PgAdmin4 开发了一个 PostGIS 数据库。我试图用另一个名为“zones_cultures”的表中的另一列(名为“surface_cultures”)的总和来更新名为“parcelles”的表中的一列(名为“surface_net”)。表“zones_cultures”有一个带有“parcelles”的外键(“zones_cultures.id_parcelles”=“parcelles.id_egrid”)。

综上所述,“surface_net”列是“id_egrid”对“zones_cultures”组的总和。

所以我做了这个 SQL 查询来更新列“surface_net”:

但它不起作用。结果如下:

有人可以帮我处理我的 SQL 查询以更新“surface_net”列吗?提前致谢

0 投票
1 回答
388 浏览

postgresql - 如何在 PostgreSQL 中实现“BEGIN ATOMIC”

BEGIN ATOMICPostgreSQL中的 Sybase 等价物是什么?

它应该是这样的:

三个更新语句必须作为一个整体一起成功或失败。

0 投票
0 回答
362 浏览

python - 从 sqlalchemy 引擎调用时提交内部 postgressql11 过程抛出错误

Postgres 版本:11

程序代码:

我通过创建 sqlalchemy 引擎然后调用此过程来调用上述过程。

它抛出以下错误。会话是使用 sessionmaker 和 create_engine 创建的。

无效的交易终止

我对 sqlalchemy 和 PostgreSQL 都很陌生。表的每个分区都有大约一百万条记录,我想在每次插入后提交。其他选项是在 python 脚本中获取分区列表并在过程中添加分区名称参数。循环遍历python中的过程并在每次调用后提交。但是,当我在 PostgreSQL 11 中读到这一点时,我们可以在过程中提交,而不是我想用的。

0 投票
1 回答
579 浏览

python-3.x - 当我尝试使用 plpython3u [WIN10,pgAdmin4 3.5] 创建函数时,PosgreSQL 11 失去了连接

当新版本出现时,我总是对 PosgreSQL 有问题。我再次尝试安装扩展 plpython3u 并带有此提示Error during: CREATE EXTENSION plpython3u; 在 PostgreSQL 9.6.0 上,我创建了扩展。我将目录添加到 PATH 并将变量 PYTHONHOME 添加到环境。现在,当我尝试使用 plpython3u 创建任何简单的函数时,它会因信息而崩溃

以下是来自日志 pgAdmin 文件的信息:

我正在使用由 StackBuildier 下载的 EDB 中的 pgAdmin 和 Pyhton 的 FireFox 有谁知道如何正确安装它?谢谢

0 投票
1 回答
293 浏览

postgresql - 创建新模式并将所有对象从旧模式复制到新模式,而不包含表数据

我想创建一个新架构 ( NPS)。

我有现有的架构(public)。

创建后NPS,我想将模式的所有内容复制publicNPS没有表数据的模式中。

并且现有的public序列必须在NPS模式中设置为 0。

非常感谢您的评论和回答。