问题标签 [postgresql-9.2]
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.
database - Postgresql 角色无法访问其创建的架构
值得注意的信息
- 我在 Windows 7 64 位上使用Postgresql 9.2 。它是使用Postgresql 网站提供的安装程序安装的
- 我以 postgres 身份登录到postgres数据库
- 我在postgres用户下创建BryceTest Schema
- 我配置
search_path
为显示"brycetest, public"
由 pgAdmin-III 提供的查询生成器生成的此 SQL 按预期工作
但这不是
也没有
我会认为,通过配置我的模式search_path
以首先查看我新创建的模式,它不需要完全限定schemaName.tableName
sql - 查询按日期范围分隔的行数
我有一个 PostgreSQL 9.2.1 数据库,我正在尝试编写 SQL 查询但未能成功,该查询将向我显示失败的不同测试 ( testname
) 的计数(current_status='FAILED'
如果没有失败则显示 0),按月分隔( last_update
)。这是表定义:
我想从中得到的是这样的:
在这一点上,我能想到的最好的方法是以下,诚然不是很接近:
我想我需要以某种方式COALESCE
获取0
值以显示在结果中,加上一些疯狂的 JOIN 来显示多个月的结果,甚至可能是一个窗口函数?
sql - 如果不存在如何创建序列
我尝试使用Check if sequence exists in Postgres (plpgsql) 中的代码。
如果序列不存在,则创建序列。运行此代码两次会导致异常:
序列...已经存在。
仅当序列不存在时如何创建序列?
如果序列不存在,则不应写入任何消息并且不应发生错误,因此我无法在此问题的另一个答案中使用存储过程,因为如果序列存在,它每次都会将消息写入日志文件。
postgresql - PostgreSQL 9.2 中 Sql Server 2008 的 DateTime 等效项
我应该在 PostgreSql 9.2 中使用时间戳还是带时区的时间戳?哪一个与 Sql Server 2008 的日期时间版本匹配。
sql - 使用 PostgreSQL 中的查询结果更新列
我在 PostgreSQL 9.2 中有下表,其中包含时间戳:
gid [PK] (bigserial), timestamp_mes (timestamp without time zone), time_diff (interval)
1, 2012-01-23 11:03:40, empty
2, 2012-01-23 11:03:42, empty
3, 2012-01-23 11:03:44,空
我添加了一个间隔列 (time_diff),并希望用此查询产生的时差值填充它:
我尝试了以下查询来更新 time_diff 列,但没有成功:
这会导致错误:
错误:用作表达式的子查询返回多行
我应该如何继续使用时差查询产生的值更新 time_diff 列?
sql - Postgres 9.2 PL/pgSQL 循环简单更新
我有一个下表:
我正在寻找一种简单的方法来更新position
递增整数(每个父级)。所以在我完成后,表格应该是这样的:
我认为我需要的是一个函数,它遍历给定的所有行trail
,具有简单的递增索引并更新position
列。然而,我是一个 pgSQL 新手,所以我很高兴听到有更简单的方法可以做到这一点。
我现在正在尝试的解决方案看起来像这样
我很确定它可以更清洁,并且不必使用函数。
postgresql - postgresql 9.2 上的慢计数(*)
这里和那里(包括 postgres web 上的官方帖子)有一些关于慢计数(*)之前版本 9.2 的讨论;不知何故,我没有找到满意的答案。
基本上我安装了 postgres 9.1,我观察到慢计数(*)很简单
在记录超过 100k 的表上。平均请求约为850ms。好吧,我假设这是人们一直在谈论的关于 postgres 9.1 及以下版本的缓慢计数的症状,因为 postgres 9.2 具有一些新功能,例如index-only scan。我想通过使用 9.1 中的相同数据集进行实验并将其放在 9.2 上。我调用了 count 语句,它仍然给出了 9.1 的错误结果。
任何人都可以提出可行的解决方案来解决这个问题吗?我需要在 postgres 上配置任何东西来启用该功能吗?
PS where 子句对我的情况也无济于事。
postgresql - Mountain Lion(OS X 服务器)中缺少套接字文件“/var/pgsql_socket/.s.PGSQL.5432”
我刚刚使用 OS X Server 将我的 MacMini Server 从 Lion Server 升级到了 Mountain Lion。我在使用 PostgreSQL 时遇到了与去年第一次安装 Lion Server 时相同的问题。
当我尝试执行任何类型的 PostgreSQL 终端命令时,我会收到以下臭名昭著的错误消息,许多人多年来都收到了这些错误消息:
当我收到错误时,我正试图更改 _postgres 的密码。我尝试了几个命令,但得到了同样的错误。我刚刚重新启动了我的服务器,但没有运气。我以 root 身份登录以查看 /var/pgsql_socket 并且该文件夹为空。文件夹 /var/pgsql_socket_alt 也是空的。
我在网上查过这个。然而,我读过的几乎所有解决方案,包括关于 Stack Overflow 的,都建议删除并重新安装 PostgreSQL。我不知道,但这似乎不是一个合理的选择,因为服务器应用程序上的几个选项使用 PostgreSQL。我联系了 Apple 企业支持(未达成协议),并被告知我的问题必须由开发人员解决,费用为 695 美元。
我有一个网站现在关闭了,因为我无法重建它。在这一点上,我不知道在哪里寻求帮助。我会继续上网看看能不能找到什么。但是我希望有人可以快速给我一个答案,以便我可以重建我的数据库。
更新:2012 年 12 月 13 日 15:33 GMT-6
这是我对 ps auwx|grep postg 的输出:
更新:2012 年 12 月 13 日 18:10 GMT-6
经过激烈的网络搜索,找到了这个视频。我能够让 PostgreSQL 工作并消除错误。我可以使用 pgadmin 和 phppgadmin 进行连接。由于纯粹的挫败感,我正要回到 Lion Server。现在我不必了。
c++ - 在 VC 2010 上使用 SSL 的 libpq
我对在支持 SSL 的 Windows(VS2010 32 和 64 位)上编译 libpq 有疑问。我下载了最新的 postgres源以及OpenSSL Win64 v1.0.1c。我在 libpq 文件夹中运行 nmmake:
cd postgresql-9.2.2\interfaces\libpq
nmake /f win32.mak CPU=AMD64 USE_SSL=1 SSL_INC=C:\OpenSSL-Win64\include SSL_LIB_PATH=C:\OpenSSL-Win64\lib
然后编译结束,他找不到bufferoverflowU.lib。搜索了一下我发现,这个库是与 windows SDK 一起部署的,并且由于 VS 2005 不再需要(参见Vista / Win 7 SDK bufferoverflowu.lib 链接错误)。所以在 libpq 的 make 文件 (win32.mak:20) 中我注释掉了这一行
ADD_SECLIB=bufferoverflowU.lib
它编译得很好。我也没有遇到任何麻烦,用 ssl 测试这个 libpq。
我是否需要良心不好从构建中删除 bufferoverflowU.lib 还是仅仅因为 makefile 不适用于 VS 2010?(顺便说一句:openssl 已将 VC 文件夹中的库名称分别更改为 *MD.lib *MT.lib。旧命名的库位于 C:\OpenSSL-Win64\lib 中,一个目录)
有人能告诉我在 VS2010 构建中是否需要 bufferoverflowU.lib 吗?
干杯,550
asp.net - Npgsql.NpgsqlException:错误:42601:“where”或附近的语法错误
我在 asp.net 中有以下 web 服务
在调用 Web 服务时,我收到以下错误:
Npgsql.NpgsqlException:错误:42601:“where”或附近的语法错误