7

これらのフェッチの違いは何ですか? 明確なアイデアを得るために参照サイトの例を教えてください.それでも私はそれと混同しています

res = cr.dictfetchall()

res2 = cr.dictfetchone()

res3 = cr.fetchall()

res4 = cr.fetchone()

cr は、データベース カーソル (OPENERP 7) からの現在の行です。

元 :

def _max_reg_no(self, cr, uid, context=None):
    cr.execute("""
    select register_no as reg_no
    from bpl_worker
    where id in (select max(id) from bpl_worker)
    """)
    res = cr.fetchone()[0]
    print (res)
    return res
4

1 に答える 1

22

cr.dictfetchall()キー、値を含む**辞書のリスト**の形式で、一致するすべてのレコードを提供します。

cr.dictfetchone()cr.dictfetchall()単一のレコードのみを返すことを除いて、 と同じように機能します。

cr.fetchall()タプルのリストの形式で一致するすべてのレコードを提供します。

cr.fetchone()cr.fetchall()単一のレコードのみを返すことを除いて、 と同じように機能します。

指定されたクエリで、次を使用する場合:

  1. cr.dictfetchall()を与えます[{'reg_no': 123},{'reg_no': 543},]
  2. cr.dictfetchone()を与えます{'reg_no': 123}
  3. cr.fetchall()'[(123),(543)]' が得られます。
  4. cr.fetchone()「(123)」が表示されます。
于 2013-03-28T10:57:04.167 に答える