Mysql
 sql >> база данни >  >> RDS >> Mysql

Каква е разликата между MySQLdb, mysqlclient и MySQL конектор/Python?

MySQLdb е тънка обвивка на python около C модул, който имплементира API за MySQL база данни.

Имаше MySQLDb1 версия на обвивка, използвана преди време и сега се счита за наследство. Тъй като MySQLDb1 започна да се развива до MySQLDb2 с корекции на грешки и поддръжка на Python3, MySQLDb1 беше разклонен и ето как mysqlclient се появи, с корекции на грешки и поддръжка на Python3. Обобщете, така че сега имаме MySQLDb2, който не е готов за производствена употреба, MySQLDb1 като остарял драйвер и поддържан от общността mysqlclient с корекции на грешки и поддръжка на Python3.

Сега, за да разреши тази бъркотия, MySQL предоставя своя собствена версия на MySQL адаптера - mysql конектор , пълен модул на python, който използва MySQL API с без зависимости от C модули и се използват само стандартни модули на Python.

Така че сега въпросът се свежда до:mysqlclient срещу mysql конектор.

Що се отнася до мен, бих използвал официално поддържана библиотека, но mysqlclient би трябвало също да е добър избор. И двете се актуализират активно с поправки и нови функции, които можете да видите чрез активни комитации през последните дни.

Забележка:Нямах много опит с тях, така че може да има случаи, когато едно или друго не отговаря на вашите нужди. И двете библиотеки следват PEP-249 стандарт, което означава, че трябва да сте добре с поне основна функционалност навсякъде.

Инсталиране и зависимости

  • mysqlclient

Като разклонение на C обвивка изисква C модули за работа с MySQL, който добавя заглавни файлове на python за изграждане на тези разширения (прочетете python-dev). Инсталацията зависи от системата, която използвате, просто се уверете, че сте наясно с имената на пакетите и можете да ги инсталирате.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP код за конвертиране на MySQL заявка в CSV

  2. Какъв е смисълът на съхранената процедура?

  3. Автоматичен начин за конвертиране на XML файлове в SQL база данни?

  4. Вмъкване на записи в MySQL таблица с помощта на Java

  5. MySQL UPDATE с SELECT SUM от различна таблица