Python + MySQL: verschil tussen versies
Naar navigatie springen
Naar zoeken springen
Regel 32: | Regel 32: | ||
* SQLAchemy | * SQLAchemy | ||
* peewee - Small & nimble | * peewee - Small & nimble | ||
− | * | + | * [https://www.fullstackpython.com/django-orm.html Django-ORM] |
== Bronnen == | == Bronnen == |
Versie van 18 okt 2018 13:09
MySQL-driver
Om vanuit Python met MySQL te communiceren, heb je een driver nodig.
Inventaris
- MySQLdb - Vermoedelijk meest gebruikt, maar schijnt complicaties te geven tijdens installatie ivm. externe afhankelijkheden [1]
- mysqlclient - Opvolger van MySQLdb. Hierdoor is MySQLdb achterhaald geworden
- MySQL Connector/Python - Veelbelovend, 100% Python (dus bv. geen C-bibliotheken), afkomstig van MySQL, maar slechte performance, licentie-issues en mogelijk significante bugs
- PyMySQL
- oursql
- SQLAlchemy - Suite of tools, wo. een driver (geloof ik)
- Storm
Keuze (okt. 2018)
Er is een interessante discussie over wat de beste driver is. Die discussie lijkt zich toe te spitsen op Mysqlclient vs. Connector/Python [2], [3] - Ik kies deze laatste.
Installatie Connector/Python (okt. 2018)
- Downloaden naar buroblad
- Dubbelklikken
- Installeren
- Klaar.
ORM
Om serieus met MySQL te werken vanuit Python (of een andere programmeeromgeving) lijkt ORM oftewel object-relational mapping onmisbaar te zijn. Dat zijn tools die het leven gemakkelijker maken
Inventaris
- SQLAchemy
- peewee - Small & nimble
- Django-ORM
Bronnen
Driver & ORM
- https://stackoverflow.com/questions/372885/how-do-i-connect-to-a-mysql-database-in-python - Goed!
- https://stackoverflow.com/questions/372885/how-do-i-connect-to-a-mysql-database-in-python/20959654#20959654
- https://en.wikipedia.org/wiki/Object-relational_mapping
- https://www.fullstackpython.com/object-relational-mappers-orms.html
- https://www.fullstackpython.com/django-orm.html