本文介绍了带有psycopg2 RealDictCursor的jsonb的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个PostgreSQL 9.4(aka mongodb killer ;-))和这个简单的模式:
I have a postgresql 9.4 (aka mongodb killer ;-) ) and this simple schema :
CREATE TABLE test (id SERIAL, name text, misc jsonb);
现在我将其填充,如果我进行选择,它将显示类似
now i populate this, if i make a select it will show something like
id | name | misc
1 | user1 | { "age" : 23, "size" : "M" }
2 | user2 | { "age" : 30, "size" : "XL" }
现在,如果我使用psycopg2的请求,
now, if i make a request with psycopg2,
cur.execute("SELECT * FROM test;")
rows = list(cur)
我最终会得到
[ { 'id' : 1, 'name' : 'user1', 'misc' : '{ "age" : 23, "size" : "M" }' },
{ 'id2' : 2, 'name' : 'user2', 'misc' : '{ "age" : 30, "size" : "XL' }' }]
您会告诉我什么地方错了?错是类型str。我希望它会被识别为json并转换为Python dict。
what's wrong you would tell me ? well misc is type str. i would expect it to be recognized as json and converted as Python dict.
(。
这篇关于带有psycopg2 RealDictCursor的jsonb的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!