问题标签 [postgresql]

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 投票
10 回答
5009 浏览

mysql - 哪个数据库对复制的支持最好

我对 MySQL 复制可以做什么有相当好的感觉。我想知道还有哪些其他数据库支持复制,以及它们与 MySQL 和其他数据库相比如何?

我会问的一些问题是:

  1. 复制是内置的,还是附加组件/插件?
  2. 复制如何工作(高级)?MySQL 提供基于语句的复制(以及 5.1 中的基于行的复制)。我对其他数据库的比较感兴趣。什么是通过电线运送的?更改如何应用于副本?
  3. 是否容易检查主从之间的一致性?
  4. 让失败的副本与主服务器同步有多容易?
  5. 表现?我讨厌 MySQL 复制的一件事是它是单线程的,并且副本通常难以跟上,因为 master 可以并行运行许多更新,但副本必须串行运行它们。其他数据库中是否有类似的陷阱?
  6. 任何其他有趣的功能...
0 投票
4 回答
761 浏览

sql - 克隆分层数据

让我们假设我有一个自引用分层表构建像这样的经典方式:

我现在需要的是一个函数(最好是纯 sql),它将获取测试记录的 id 并克隆所有附加记录(包括给定的记录)。克隆的记录当然需要有新的 id。例如,期望的结果是这样的:

任何指针?我使用的是 PostgreSQL 8.3。

0 投票
7 回答
88021 浏览

sql - PostgreSQL - 重命名数据库

我需要重命名数据库,但是当我这样做时 PGAdmin : ALTER DATABASE "databaseName" RENAME TO "databaseNameOld"告诉我它不能。

我该怎么做?

WindowsXP 上 8.3 版

更新

  • 第一条错误消息:无法,因为我已连接到它。所以我选择了另一个数据库并进行了查询。

  • 我收到第二条错误消息,告诉我它已经连接到用户。我在PGAdmin屏幕上看到它有很多PID,但它们是不活动的……我不知道如何杀死它们。

0 投票
6 回答
15037 浏览

python - Python PostgreSQL 模块。哪个最好?

我见过许多用于 python 的 postgresql 模块,如 pygresql、pypgsql、psyco。它们中的大多数都符合 Python DB API 2.0,有些不再积极开发。你推荐哪个模块?为什么?

0 投票
5 回答
14076 浏览

linux - 你能推荐一个适用于 Linux 的 PostgreSQL 可视化数据库设计器吗?

当我在 Windows 中时,我使用优秀的 MicroOLAP Database Designer for PostgreSQL,但它不是开源的或多平台的。
您知道或可以向我推荐可以在 Linux 中使用的该软件的替代品吗?

编辑:澄清一下,我不想用 wine 来模拟 PostgreSQL 的 MicroOlap,它工作得不太好,我更喜欢本机或基于 Java 的东西。

0 投票
2 回答
13681 浏览

sql - 如何使用 PostgreSQL 序列更新 SQL 中的唯一值?

在 SQL 中,如何更新表,将每一行的列设置为不同的值?

我想更新 PostgreSQL 数据库中的一些行,将一列设置为序列中的数字,其中该列具有唯一约束。我希望我可以使用:

但似乎nextval只被调用一次,所以更新对每一行使用相同的数字,我得到一个“重复键违反唯一约束”错误。我应该怎么做?

0 投票
9 回答
3489 浏览

sql - 在一组两种可能性中选择唯一行

问题本身很简单,但我无法找出在一个查询中解决问题的解决方案,这是我对问题的“抽象”,以便进行更简单的解释:

我会保留我原来的解释,但这里有一组示例数据和我期望的结果:

好的,这是一些示例数据,我用空行分隔了对

我期望的结果是,在运行一次查询之后,它需要能够在一个查询中选择这个结果集:

原文解释:

我有一个表,把它称为TABLE我有两列的地方IDNAME它们一起构成了表的主键。现在我想在哪里选择一些东西,ID=1然后首先检查它是否可以找到NAME值“John”的行,如果“John”不存在,它应该寻找NAME“Bruce”所在的行 - 但只返回“John”如果“布鲁斯”和“约翰”都存在,或者当然只有“约翰”存在。

另请注意,它应该能够为每个查询返回几行匹配上述条件但当然具有不同的 ID/名称组合,并且上述解释只是对实际问题的简化。

我可能完全被自己的代码和思路蒙蔽了双眼,但我就是想不通。

0 投票
5 回答
46168 浏览

php - 在应用 LIMIT 之前获取结果计数的最佳方法

在对来自 DB 的数据进行分页时,您需要知道将有多少页面来呈现页面跳转控件。

目前,我通过运行两次查询来做到这一点,一次包裹在 acount()中以确定总结果,第二次使用限制来获取当前页面所需的结果。

这似乎效率低下。有没有更好的方法来确定在应用之前会返回多少结果LIMIT

我正在使用 PHP 和 Postgres。

0 投票
3 回答
3227 浏览

database - 如何优化 PostgreSQL 配置?(有可用的工具吗?)

在 postgresql 中,您可以根据自己的性能需求对其进行大量优化。内存使用的设置仍然很容易,但是对于其他选项,例如用于查询优化器的 CPU 和 IO 的成本因素,对我来说是一个谜。我想知道是否有可用的程序可以对您的硬件(CPU 速度、内存性能、硬盘速度)进行基准测试,分析您的数据库并为这个特定环境提出最佳配置?

编辑:

让我澄清一下,我知道如何使用索引和基本内存设置调整我的数据库。我还可以找出要调整哪些设置以获得更好的性能,但是:我没有时间,所以我想要一个工具来为我找到这个。

0 投票
4 回答
18658 浏览

oracle - 用于将 Oracle PL/SQL 转换为 Postgresql PL/pgSQL 的工具

是否有工具(最好是免费的)可以将 Oracle 的 PL/SQL 存储过程语言翻译成 Postgresql 的 PL/pgSQL 存储过程语言?