Python: преимущества и недостатки _mysql по сравнению с MySQLdb? - PullRequest
11 голосов
/ 25 октября 2009

Две библиотеки для Mysql. Я всегда использовал _mysql, потому что это проще.

Может кто-нибудь сказать мне разницу, и почему я должен использовать какой в ​​определенных случаях?

Ответы [ 3 ]

14 голосов
/ 25 октября 2009

MySQLdb использует DB-API (описанный в PEP 249 ), который должен быть предпочтительным, поскольку он является общим для всех драйверов баз данных. ИМХО, нет никакого преимущества в переходе на низкий уровень с _mysql. Я бы предпочел использовать библиотеки более высокого уровня, например, SQLAlchemy .

9 голосов
/ 03 ноября 2009

В качестве альтернативы вы можете использовать MySQL Connector / Python :

MySQL Connector / Python полностью реализует протокол MySQL Client / Server в Python. Это означает, что вам не нужно ничего компилировать или MySQL даже не нужно устанавливать на машине.

5 голосов
/ 25 октября 2009

_mysql - это однозначное отображение грубого API mysql. Кроме того, DB-API построен, обрабатывая вещи с помощью курсоров и так далее.

Если вы привыкли к низкоуровневому API-интерфейсу mysql, предоставляемому libmysqlclient, тогда вам нужен модуль _mysql, но, как говорит другой ответ, реальной необходимости переходить на столь низкоуровневый уровень нет. Вы можете работать с DB-API и вести себя отлично, с дополнительным преимуществом, состоящим в том, что DB-API не зависит от сервера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...