我有一个带有简单xml结构的文件,我想将其加载到Postgres表中。
<rows>
<field name="id">1</field>
<field name="age">75-84</field>
<field name="gndr">F</field>
<field name="inc">32000-47999</field>
</rows>
有没有一种简单的方法可以做到这一点?
答案 0 :(得分:4)
嗯,可以完成。我曾经为同一目的编写了一个完整的函数:
我使用pg_read_file()将整个文件读入plpgsql中的变量并从那里继续。这有一些限制:
仅数据库群集目录和log_directory中的文件 可以访问。使用群集中文件的相对路径 目录,以及与log_directory配置设置匹配的路径 用于日志文件。这些功能的使用仅限于超级用户。
但我列出了其他选择。
如果您可以将XML文件转换为JSON,则会变得更简单。 There are a bunch of tools for that available
从Postgres 9.3 开始,您可以很好地支持json
数据类型。
更好的是,使用Postgres中的jsonb
数据类型 9.4 + 。