gpt4 book ai didi

python - 使用 Python 在具有 JSON 列的表上测试 Postgresql 查询

转载 作者:行者123 更新时间:2023-12-01 06:34:17 24 4
gpt4 key购买 nike

示例查询:

SELECT error->>'message' as message
FROM error_cases

实际上,我的查询要复杂得多,我想确保将来的代码更改不会破坏此查询输出的数据。我想将此查询的结果与我已有的某些特定输出进行比较。我正在使用 testing.postgresql 库创建临时数据库、运行查询、保存输出并销毁数据库。
我的查询使用 Postgresql ->> 表示法。我收到错误:

psycopg2.errors.UndefinedFunction: operator does not exist: text ->> unknown

要重现,首先我创建表:

            cur.execute('CREATE TABLE error_cases (error TEXT NOT NULL)')

然后我插入数据:

cur.execute('INSERT INTO error_cases 
VALUES ('{"message": "someMessage"}')

并选择:

select (error->>'message') as message from error_cases

我已经查看了 sqlalchemy 来查询数据,但问题是我想测试这个特定的查询。在用于检索 JSON 的 sqlalchemy 中,我无法使用查询中的 Postgresql ->> 表示法。
---是否有其他方法可以在使用 testing.postgresql 创建的数据库上运行包含 ->> 运算符的查询?

最佳答案

我刚刚找到了这个问题,这个问题非常基本 - 应该是:
CREATE TABLE error_cases(错误 JSONB NOT NULL) 而不是
创建表error_cases(错误文本不为空)

关于python - 使用 Python 在具有 JSON 列的表上测试 Postgresql 查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59752120/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com