2010-02-23 13 views
11

Nell'effettuare SQL come UPDATE e INSERT, i soliti metodi .fetch*() sull'istanza Cursor ovviamente non si applicano al numero di righe modifica.il numero di righe modificate dopo sqlite3 eseguire

In caso di esecuzione di una delle istruzioni precedenti, qual è il modo corretto per ottenere il numero di righe corrispondente in Python e l'API corrispondente nell'interfaccia Sqlite3 C?

risposta

20

Dopo aver chiamato i metodi Cursor.execute*() con le istruzioni UPDATE o INSERT, è possibile utilizzare Cursor.rowcount per visualizzare il numero di righe interessate dalla chiamata di esecuzione.

Se dovessi indovinare direi che il lib python chiama int sqlite3_changes(sqlite3*) dall'API C ma non ho guardato il codice quindi non posso dirlo con certezza.

+0

e la corrispondente funzione C? –

+0

Modificato con un'ipotesi basata sull'utilizzo dell'API C. – mockobject

Problemi correlati