Due librerie per Mysql. Ho sempre usato _mysql perché è più semplice.Python: vantaggi e svantaggi di _mysql vs MySQLdb?
Qualcuno può dirmi la differenza e perché dovrei usare quale in certe occasioni?
Due librerie per Mysql. Ho sempre usato _mysql perché è più semplice.Python: vantaggi e svantaggi di _mysql vs MySQLdb?
Qualcuno può dirmi la differenza e perché dovrei usare quale in certe occasioni?
MySQLdb utilizza DB-API (descritto in PEP 249) che dovrebbe essere preferito, poiché è comune a tutti i driver di database. IMHO non vi è alcun vantaggio nell'andare a basso livello con _mysql
. Preferirei piuttosto utilizzare librerie di livello superiore, come SQLAlchemy.
'_mysql' deve esistere per collegare l'API di livello superiore alle librerie C. Il '_' dovrebbe essere un indizio che di solito non dovresti usarlo. –
estraneo. Bel gatto. –
_mysql è il mapping one-to-one dell'API mysql approssimativa. Oltre a ciò, la DB-API è costruita, gestendo le cose usando i cursori e così via.
Se si è abituati all'API mysql di basso livello fornita da libmysqlclient, il modulo _mysql è ciò di cui si ha bisogno, ma come dice un'altra risposta, non è necessario andare così a basso livello. È possibile lavorare con la DB-API e comportarsi bene, con l'ulteriore vantaggio che la DB-API è indipendente dal backend.
In alternativa, è possibile utilizzare MySQL Connector/Python:
MySQL Connector/Python sta attuando completamente il protocollo MySQL client/server in Python. Ciò significa che non devi compilare nulla o che MySQL non deve nemmeno essere installato sulla macchina.
penso che questo sarà certamente di interesse ... http://charlesnagy.info/it/python/python-mysqldb-vs-mysql-connector-query-performance – Eugene