我有一个需要从Postgres-DB读取数据并返回行的django项目。我使用了一个django.connections.cursor对象来做到这一点。当我执行查询时,我得到了列或表属性,但我没有得到任何行。我知道DB-table本身是用行填充的,所以它不是一个空数据库。
isset()
为别名创建测试数据库'默认' ...
CURSOR IS:
try:
cursor = connection.cursor()
rv = cursor.execute("SELECT * from test_db_table")
columns = [col[0] for col in cursor.description]
print "CURSOR IS : "
print cursor
print "Cursor descritpion : " + str(cursor.description)
print "COLUMNS : "
print columns
print "ROW : 0"
print cursor.fetchone()
print "ALL ROWS : "
print cursor.fetchall()
return [dict(zip(columns, row))
for row in cursor.fetchall()]
except Exception as e:
logger.exception(str(e))
return []
Cursor descritpion:
<django.db.backends.utils.CursorWrapper object at 0x7f3b8a7e6050>
专栏:
(Column(name='uuid', type_code=1043, display_size=None, internal_size=36, precision=None, scale=None, null_ok=None),
Column(name='ossa_id', type_code=1043, display_size=None, internal_size=16, precision=None, scale=None, null_ok=None),
Column(name='link', type_code=25, display_size=None, internal_size=-1, precision=None, scale=None, null_ok=None),
Column(name='processed', type_code=16, display_size=None, internal_size=1, precision=None, scale=None, null_ok=None),
Column(name='name', type_code=25, display_size=None, internal_size=-1, precision=None, scale=None, null_ok=None),
Column(name='description', type_code=25, display_size=None, internal_size=-1, precision=None, scale=None, null_ok=None),
Column(name='affects', type_code=25, display_size=None, internal_size=-1, precision=None, scale=None, null_ok=None),
Column(name='patches', type_code=25, display_size=None, internal_size=-1, precision=None, scale=None, null_ok=None),
Column(name='references', type_code=25, display_size=None, internal_size=-1, precision=None, scale=None, null_ok=None),
Column(name='notes', type_code=25, display_size=None, internal_size=-1, precision=None, scale=None, null_ok=None),
Column(name='cve', type_code=25, display_size=None, internal_size=-1, precision=None, scale=None, null_ok=None),
Column(name='notice_date', type_code=1082, display_size=None, internal_size=4, precision=None, scale=None, null_ok=None),
Column(name='created', type_code=1184, display_size=None, internal_size=8, precision=None, scale=None, null_ok=None),
Column(name='updated', type_code=1184, display_size=None, internal_size=8, precision=None, scale=None, null_ok=None))
行:0
所有行:&#34;
[]
['uuid', 'ossa_id', 'link', 'processed', 'name', 'description', 'affects',
'patches', 'references', 'notes', 'cve', 'notice_date', 'created', 'updated']
有人能说清楚这个吗?