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

使用Python在具有JSON列的表上测试Postgresql查询,python,json,database,postgresql,jsonb,Python,Json,Database,Postgresql,Jsonb,查询示例: SELECT error->>'message' as message FROM error_cases 实际上,我的查询要复杂得多,我希望确保将来的代码更改不会破坏此查询输出的数据。我想将这个查询的结果与我已有的一些特定输出进行比较。 我正在使用testing.postgresql库创建临时数据库,运行查询,保存输出并销毁数据库。 我的查询使用Postgresql->表示法。我得到一个错误: psycopg2.errors.UndefinedFunction: ope

查询示例:

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\u cases(error JSONB NOT NULL)
而不是
创建表错误\u案例(错误文本不为空)