jython zxJDBC:如何从光标中获取字典?

时间:2011-05-31 09:00:29

标签: jdbc jython

我使用JDBC将我的jython连接到一组异构数据库。 使用游标我得到列表形式的行和光标 也知道元数据(cursor.description)。

通常,您会在查询结果中获得一行作为列表:

print resultlist(4)

您必须事先了解架构中列的顺序。

我怎样才能得到像

这样的东西
print resultset[CustomerName]

打印客户名称?

1 个答案:

答案 0 :(得分:2)

此问题的dict_cursor怎么样:Django Backend-neutral DictCursor

对我有用的概要(Jython 2.5.2):

def dict_cursor(cursor):
    description = [x[0] for x in cursor.description]
    for row in cursor:
        yield dict(zip(description, row))

conn = zxJDBC.connect(db, user, pwd, driver)
cursor = conn.cursor()

query = "..."
cursor.execute(query)

dc = dict_cursor(cursor)
for d in dc:
    print d["SomeColumnName"]
    ...

cursor.close()
conn.close()