Python SQLite3 からのデータ読み出し

import sqlite3
db = ("mydb.db")
con = sqlite3.connect(db)
con.row_factory = sqlite3.Row
cur    = con.cursor()
cur.execute("select * from mydb order by hoge")
rows = cur.fetchall()
for row in rows:
    print unicode(row["hoge"])
    print unicode(row[0])
cur.close()
con.close()
ここでポイントは、 con.row_factory = sqlite3.row
この呪文を唱えないと、 row["hoge"] のdictionaryの文字列keyでの変数呼び出しができない。