问题标签 [postgresql-9.4]
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.
ruby-on-rails - 如何在rails中使用jsonb
我有一个使用 Postgresql 9.4 作为后端的 Rails 项目。我有这样的专栏:
如何将其从 JSON 更改为 JSONB?我应该添加索引并将其更改为 JSONB 吗?
perl - Postgres 9.4beta1 上 otrs 子程序条目中的宽字符
从 Postgres 9.1.2 升级到 Postgres 9.4beta1 后,OTRS 3.3.5 停止使用在 http-error.log 中发现的 Perl 错误,该错误在关闭工单时引发。错误是:
[...]/Kernel/System.DB.pm 第 499 行的子例程条目中的宽字符
第 499 行如下:
执行查询时似乎 Perl 脚本失败。
我的 Perl 版本是 v5.16.3。
我搜索了很多,但到目前为止没有解决方案对我有用。
ruby-on-rails - Postgres 启用 TCP/IP 连接
我在 CentOS 6.6 系统上安装了 postgres-9.4 数据库服务器。我正在尝试从我的笔记本电脑连接到这个服务器(连接到同一个网络。笔记本电脑的 ip 是 192.168.1.105。我正在运行psql -U postgres -h 192.168.1.52
)。psql 命令失败并显示错误消息:
我的配置:/var/lib/pgsql/9.4/data/pg_hba.conf
/etc/sysconfig/iptables:
我已经重新启动了 iptables 服务。
/var/lib/pgsql/9.4/data/postgresql.conf
我重新启动服务器如下:
ps aux 和 grep postgres 返回以下内容:
当我在服务器上执行 netstat 并 grep 获取 5432 时,我什么也得不到:
但netstat -tulnp
返回这个:
'netstat -l|grep postgres' 的输出
但如前所述,我笔记本电脑上的 psql 无法连接到服务器。
我错过了什么?
rules - Postgresql 中物化视图的规则和触发器
自 9.3 以来,物化视图是 Postgresql 中一个非常好的新特性,但是......我无论如何都无法添加规则或触发器。我没有找到任何文档说你不能向物化视图添加触发器或规则,但是使用 PgAdminIII 和普通 SQL 我得到了错误(分别是“不支持物化视图的规则”和“xxx不是表或视图”) .
我的物化视图基本上是多个连接,允许我将“编码”表与查找表连接以创建可读表(例如,城市邮政编码列表,其代码与城市名称和人口连接)。我需要一个触发器或规则才能在更新物化视图时更新原始表。
所以我的问题是:是否有向物化视图添加触发器或规则的技巧?
postgresql - PostgreSQL:非空 JSON 对象的 CHECK 约束
我想对 JSONB 列有一个 CHECK 约束,它只允许非空 JSON 对象(仅{}
具有属性,没有其他值,如[]
JSON 原语)。
我只想检查“根”值,这些对象中存储的内容并不重要。
我怎样才能做到这一点?
activerecord - 是什么导致 ActiveRecord 在分叉后断开 Postgres 连接?
我在 Rails 4.2 项目中有一个使用fork
. 我的问题是,在分叉进程完成后(即之后Process.wait
),当我再次尝试访问数据库时,出现以下 Postgres 错误:
起初,我怀疑 ActiveRecord 会在分叉进程完成后自动关闭连接。但是在阅读了 AR 的代码之后connection_pool.rb
,似乎分叉的进程应该使用它们自己的连接:
在必须随后分叉的祖先进程中建立了连接。我们不能重用连接,但我们可以复制规范并与之建立新的连接。
(来自ActiveRecord::ConnectionAdapters::ConnectionHandler#pool_for_owner
)
然而,分叉使连接无用。
我试图完全阻止分叉的进程访问数据库,并验证了旧的连接在分叉后无法使用以下代码重用:
关于如何解决这个问题的任何建议?
arrays - 如何在数组索引中创建 Postgresql JSONB 数组?
我有这样的结构:user_id,a。
a 是 jsonb 类型,具有以下结构:
我将如何创建一个索引,使我能够在 ids 列表中找到具有特定 id 的所有用户 (user_id)?
postgresql - jsonb 字段上的三元组索引不起作用?
我已经创建了这样的索引(documentData
列的类型jsonb
):
现在,当我执行以下查询时:
我得到以下输出
为什么查询不使用三元索引?
postgresql - 负(反转)运算符 vs NOT(...)
一些运营商有他们的反转选项,如:
例如,如果我要写的话,性能有什么不同吗
代替
是否有任何运算符的倒数运算符会比使用更快NOT
?
postgresql - 如何确定触发器内的列值是否为 INTEGER?
这是BEFORE UPDATE
触发器执行的 func 的骨架
我需要的是确定(使用IF
语句)是否NEW.mycol
是INTEGER
而不是一些文字。所以IF
条件应该返回true:
和错误的: