如何解决如何以这种格式将数据从 json 文件导入 PostgreSQL?
{"name": "example","location": "example"}
{"name": "example2","location": "example2"}
每一行都是一个不同的 json 对象,我将所有 json 文件本地存储在 Linux 机器上。
这些json的格式在尝试导入数据时造成了很多问题。首先,所有的字符串都是用双引号写的。我读到双引号应该用于列名,所以这可能是一个问题。其次,主要问题是 json 文件对象中的一些字符串具有键值,例如:
{"example1": "\"example text\""}
或
{"example2": "that's"}
我要测试的查询是:
copY table(data jsonb) from '/path/to/jsons.json';
ERROR: invalid input Syntax for type json
DETAIL: Token "example" is invalid.
CONTEXT: JSON data,line 1: "example":""exampl...
在第二个示例的情况下,它将单引号视为字符串的结尾,因此导致另一个语法错误:
ERROR: Syntax error at or near "s"
LINE 1: "example":"that's"
^
重新格式化 json 文件并不是一个真正的选择,因为我有数百个文件,每个文件中都有数十万个对象,除非有一种有效的方法来这样做。
我想知道是否有办法让 Postgresql 接受我的 jsons 格式并将每个对象正确插入表中。我想将数据类型保留为 json 或 jsonb,以便以后可以使用 Postgresql 的 json 函数。
谢谢!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。