Cara mendapatkan hasil/umpan balik/jumlah baris/jumlah baris yang terpengaruh oleh kueri MERGE dalam cuplikan python

Saya menggunakan cur.rowcount dengan permintaan pembaruan dan berfungsi dengan baik.

Ketika saya menggunakan hal yang sama dengan kueri penggabungan, ia mengembalikan -1 meskipun kueri penggabungan berhasil memperbarui banyak baris.

sql = 'merge blah bla..'
params = 'blah blah'
cursor.execute(sql,params)
print(cursor.rowcount)

Python 3.4 Oracle 11g


person pratish_v    schedule 27.07.2018    source sumber
comment
hanya karena penasaran, bisakah Anda memeriksa len(cur.fetchall()) apakah itu mengembalikan nilai?   -  person akash karothiya    schedule 27.07.2018
comment
Fungsi pengambilan @akashkarothiya hanya berfungsi dengan kueri yang mengembalikan baris data, meskipun saya mencobanya print(len(cur.fetchall())) cx_Oracle.InterfaceError: bukan kueri   -  person pratish_v    schedule 27.07.2018


Jawaban (1)


Dari definisi http://cx-Oracle.readthedocs.io/en/latest/cursor.html#Cursor.rowcount cur.rowcount kembali jika terjadi (pernyataan masukkan, perbarui dan hapus)

person Ambikeshwar Srivastava    schedule 27.07.2018
comment
stackoverflow.com/questions/1401328/ - person Ambikeshwar Srivastava; 27.07.2018
comment
SQL%ROWCOUNT tidak berfungsi seperti yang Anda kira, bila digunakan dengan pernyataan MERGE. - person eaolson; 29.07.2018