Mysql
 sql >> Database >  >> RDS >> Mysql

dovrei riutilizzare il cursore nel modulo python MySQLdb

Lo sviluppatore MySQLdb consiglia di creare un'API specifica per l'applicazione che esegua l'accesso al DB per te in modo da non doversi preoccupare delle stringhe di query mysql nel codice dell'applicazione. Renderà il codice un po' più estensibile (link ).

Per quanto riguarda i cursori, la mia comprensione è che la cosa migliore è creare un cursore per operazione/transazione. Quindi alcuni check value -> update value -> read value tipo di transazione potrebbe utilizzare lo stesso cursore, ma per quella successiva ne creeresti uno nuovo. Questo indica ancora una volta la direzione della creazione di un'API interna per l'accesso db invece di avere un generico executeSql metodo.

Ricorda inoltre di chiudere i cursori e di confermare le modifiche alla connessione al termine delle query.

Il tuo getDatabaseResult la funzione non ha bisogno di avere una connessione per ogni query separata però. Puoi condividere la connessione tra le query purché tu agisca in modo responsabile con i cursori.