2012-07-21 103 views
0

它可以使用ngx_postgresngx_rds_json和PostgreSQL返回JSON。是否有可能将JSON重新插入到PostgreSQL中(无需外部脚本)?JSON在Nginx的配置

+0

你是什么意思“插入JSON回到PostgreSQL?你的意思是将JSON作为JSON存储在PostgreSQL中或文本字段?或者转换为有效的类型并插入到表中? – 2013-04-05 01:43:29

回答

0

这个问题的答案很大程度上取决于你正在尝试做的。这是一个非常普遍的问题,根本不清楚问题所在,但在这种情况下,我会回答两种方法,以便其他人在看到问题时做出决定。

PostgreSQL中

存储JSON在PostgreSQL 9.2和PostgreSQL自带原生JSON类型。这已被回迁到9.1由安德鲁邓斯坦和可在https://bitbucket.org/adunstan/json_91

对于早期版本,您唯一的选择是使用文本字段。 JSON类型功能不是很全面。它确实验证了这一切。至少开箱即可轻松地将JSON转换为其他类型。如果你正在做的是存储自由形式的数据(蒙戈样),这可能是你几乎足够了,但您可能需要plv8js安装做任何事情与它特别有用(如,例如,索引JSON领域基于是否存在一个给定的财产,以及它的价值是什么)。

PostgreSQL中

PostgreSQL的操纵JSON自带没有现成的设施用于操纵JSON。然而,PostgreSQL也是世界上最多,也是最可编程的RDBMS之一,所以任何事情都是可能的。

最简单的方法可能是安装plv8js或写入操作JSON在JavaScript中后端数据库的功能。然后,您可以使用触发器等将隐藏在视图后面的逻辑或使用存储过程界面。这不会是外部脚本,因为它可能是您在数据库中编码的数据表示功能。

如果Javascript不是你的茶,你也可以使用plperluplpython来编写函数。

1

尝试实验模块ngx_pgcopy。 样品如何做到这一点,你可以在slim_middle_samples找到。 你需要的例子slim_middle_samples/sql/1.import.export.sql和nginx.conf/import.export.nginx.conf