问题标签 [php-pgsql]

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 投票
3 回答
3504 浏览

php - Apache 无法加载 postgres

今天我已将我的 MacBook 更新到 OS X 10.9。

更新后新的配置(httpd.config 和 php.ini)被添加,旧的配置被重命名previous。我更改了配置名称,一切正常。一切?不,没有加载 postgres。我创建了一个phpinfo() test.php来检查这个。是的,没有加载 postgres。

查看 apache 错误日志说PHP Fatal error: Call to undefined function pg_connect()。这是合乎逻辑的反应。


编辑:

我尝试了以下解决方案: 这里 但仍然是同样的问题。

PDO_postgres我用pecl手动安装。现在phpinfo()显示pdo_pgsql扩展和 apache 可以加载动态库。但我需要正常的pgsql扩展。我仍然得到:

PHP Startup: Unable to load dynamic library '/usr/lib/php/extensions/no-debug-non-zts-20100525/php_pgsql.dll' - dlopen(/usr/lib/php/extensions/no-debug-non-zts-20100525/php_pgsql.dll

错误。

如何pgsql手动安装普通扩展?Pecl 没有找到包裹。

我可以使用 PGAdmin 成功连接到我的数据库。


有人知道我该如何解决这个问题吗?我忘了要改变什么吗?

编辑2:

我解决了pgsql手动安装扩展的问题。

0 投票
1 回答
3869 浏览

php - 在 Mavericks (10.9) 上配置并运行 PHP/PGSQL 但 pdo_pgsql 不会配置

我刚刚升级到 MacOS Mavericks (10.9),我正在使用 Postgres.app 安装。

我按照在 Mac OS X 上的 PHP 中启用 PostgreSQL 支持的答案中的说明进行操作,以使 PGSQL 再次可访问。我包含了 --with-pgsql=/path/to/pgsql 选项来解决“找不到 libpq-fe.h”错误,并且成功启用了 pgsql 访问。

然而,当我开始配置pdo_pgsql时,我得到了“找不到 libpq-fe.h”错误,尽管我完全按照我在上面的pgsql配置中所做的那样指定了安装路径。

这是成功pgsql配置的一个片段 - 请注意pg_config 检查响应中的双斜杠。

'pg_config' 应该是:

但是,在配置pdo_pgsql时,根本找不到 pg_config。

我尝试指定带和不带斜杠的路径,以及带或不带 bin 目录的路径,所有这些都适用于pgsql而没有一个适用于pdo_pgsql

0 投票
1 回答
3629 浏览

php - 打印 Postgres 数据库数组中的所有行

我正在尝试从我的 postgres 数据库中进行一个简单的查询,然后尝试操作数据。

我制作的脚本如下;

现在一切正常,除了打印只打印出数据库结果集的第一行,而我的数据库中有 3 行。我在这里想念什么?

0 投票
3 回答
11325 浏览

sql - 事务回滚在 Postgresql 中不起作用

我正在研究 PostgreSQL 9.1.4 。

我将数据插入到 2 个表中,它工作得很好。

我希望为我的表应用事务,这两个表都存在于同一个数据库中。如果我的第二张桌子在任何时候失败,我的第一张桌子应该回滚。

我尝试将“max_prepared_transactions”中的属性设置为/etc/postgres/postgres.conf. 但仍然事务回滚不起作用。

0 投票
1 回答
476 浏览

php - PHP PostgreSQL 设置中的冲突错误

我正在尝试使用 PHP 连接到 PostgreSQL 数据库。PHP 已经安装。当我尝试在命令行(Centos)上执行以下代码时,以下错误返回

我还尝试删除第一个 php

并再次安装它

但它返回相同的错误。

我不明白我应该解决什么问题?

0 投票
1 回答
1882 浏览

php - 用php在postgresql中截断带有约束的表

我有一张表格,可以从 rss-feed 获取数据。我需要在导入之前截断数据库表,这样我就没有任何不在 rss-feed 中的“旧”条目。

但是当我尝试截断时,我得到一个错误duplicate key value violates unique constraint

我曾尝试寻找答案,但找不到任何人解释如何使用 php 进行操作。

我的旧代码:

这是我得到的错误:

我试过了:

但我得到同样的错误。在截断表格时应该如何禁用关系?

编辑1:

如果我尝试:

我收到此错误:

0 投票
2 回答
50968 浏览

postgresql - 如何直接在postgresql中执行存储过程?

我创建了一个类似的程序:

并尝试像这样执行它:

但它会引发以下错误:

错误:函数 insert_user_ax_register(unknown, unknown, unknown, timestamp with time zone, unknown, unknown, timestamp with time zone, unknown, unknown, unknown, bigint) 不存在 SQL 状态:42883 提示:没有函数匹配给定的名称和参数类型。您可能需要添加显式类型转换。人物:16

请帮我解决这个问题。我是 pgsql 的新手,无法从谷歌找到任何解决方案。我在用pgsql 9.1.3

我可以知道实现目标的正确方法是什么吗?

0 投票
0 回答
104 浏览

sql - 在 postgres 中按查询排序非常慢

我的项目中有很多查询订单。我有一张大约有 100K 记录的表。执行测试后,我发现:1)通过选择 6 个元素进行排序的查询需要 800-900 毫秒 2)通过选择 6 个元素进行无顺序查询需要 2-3 毫秒

订购似乎很慢。在网上搜索后,我发现了很多东西和这篇文章: 文章

我试图增加 working_mem 但没有得到好的结果。我该怎么做才能让它更快?

下面是一个查询示例:

此查询列出了与关键字匹配的前 6 个主题

0 投票
0 回答
779 浏览

postgresql - 转储包含 50 万张表的数据库需要 24 小时以上

我有一个大小为 160GB 的数据库,并且有大约 500,000 个表。我昨天使用以下方法运行了 pg_dump:

该过程现在似乎运行了超过 24 小时,我不知道需要多少时间才能完成。没有错误,转储运行顺利。有没有办法估计转储时间?生成的转储文件的大小是多少?

另外,如果转储花了这么多时间,那么 pg_restore 需要多少时间?

编辑:

另外,我注意到生成的备份文件没有显示任何磁盘空间

0 投票
0 回答
323 浏览

postgresql - pg_dump 涉及的步骤?

我想知道 pg_dump 是如何一步一步地工作的。我知道它从锁定表开始。我目前正在我的数据库上执行 pg_dump 并且我打开了 --verbose 模式。这是我目前得到的:

那么,这些之后 pg_dump 的所有步骤是什么?它是在此之后开始处理这些表中的值还是在这些表中进行处理?