SQLAlchemy
Az SQLAlchemy egy Python programkönyvtár , amely ORM technológiát használó relációs adatbázis-kezelő rendszerekkel dolgozik . Python objektumok és relációs adatbázis rekordok szinkronizálására szolgál. Az SQLAlchemy lehetővé teszi az adatbázis-struktúrák leírását, és azt, hogy hogyan lehet velük együttműködni Pythonban SQL használata nélkül [6] . A könyvtár 2006 februárjában jelent meg az MIT nyílt forráskódú licence alatt [7] .
Back-end adatbázisokhoz működik: MySQL , PostgreSQL , SQLite , Oracle és mások, [8] amelyek között a konfiguráció megváltoztatásával válthatunk [6] .
Főbb jellemzők
- Az ORM használata nem kötelező
- Kialakult építészet
- Kézzel írt SQL használatának képessége
- Tranzakciós támogatás
- Lekérdezések létrehozása Python-függvények és kifejezések használatával
- Modularitás és bővíthetőség
- További lehetőség az objektumleképezés és az osztályok külön meghatározására
- Kompozit indexek támogatása
- Osztályok közötti kapcsolatok támogatása, beleértve az egy a többhez és a sok a sokhoz kapcsolatokat
- Önhivatkozási objektumok támogatása
- Az adatok előzetes és utólagos feldolgozása (lekérdezési paraméterek, eredmény)
és mások [9] .
A
Az SQLAlchemy használata az SQL kód automatikus generálására számos előnnyel jár az SQL kézi írásával szemben [10] :
- Biztonság. A lekérdezési paraméterek kihagyásra kerülnek, így az SQL injekciós támadások kevésbé valószínűek.
- Teljesítmény. Az adatbázis-kiszolgáló lekérdezése nagyobb valószínűséggel kerül újrafelhasználásra, ami bizonyos esetekben lehetővé teheti a lekérdezés-végrehajtási terv újbóli alkalmazását .
- Hordozhatóság . Az SQLAlchemy a megfelelő megközelítéssel lehetővé teszi Python-kód írását, amely kompatibilis számos háttér-DBMS-sel. Az SQL nyelv szabványosítása ellenére az adatbázisok között vannak eltérések a megvalósításában, amitől az SQLAlchemy segít elvonatkoztatni.
Példa
A legegyszerűbb példa az SQLAlchemy használatára a RAM-ban:
>>> az sqlalchemy importból create_engine
>>> engine = create_engine ( 'sqlite:///:memory:' )
>>> engine . execute ( "válassza ki a "Hello, World!" ) . skalár ()
'Hello, World!'
Alkalmazások és analógok
Az SQLAlchemy-t TurboGears , Pylons , Pyramid , Zope [11] webes keretrendszerekben használják . Például a híres közösségi híroldal, a Reddit az SQLAlchemy [1] segítségével készült . Az SQLAlchemyt használó szervezetek listája megtalálható a projekt honlapján [12] .
Az SQLAlchemynek számos analógja van, köztük az SQLObjectés Vihar.
Jegyzetek
- ↑ 12 AIX és UNIX műszaki könyvtár, SQLAlchemy használata . Letöltve: 2009. június 26. Az eredetiből archiválva : 2012. április 2.. (határozatlan)
- ↑ Az sqlalchemy nyílt forráskódú projekt az Open Hubon: Nyelvek oldala - 2006.
- ↑ Kiadás 1.4.42 - 2022.
- ↑ http://www.sqlalchemy.org/download.html
- ↑ Az sqlalchemy nyílt forráskódú projekt az Open Hubon: Licencek oldala - 2006.
- ↑ 1 2 Ziade, 2008 , p. 154-155.
- ↑ PyCon 2007 Wrapup archiválva 2012. október 21-én a Wayback Machine -nél , az SQLAlchemy 2006 februárjában kiadta a 0.1.0-t – O'Reilly Media
- ↑ SQLAlchemy dokumentáció, motorkonfiguráció (lefelé irányuló kapcsolat) . Hozzáférés időpontja: 2012. július 30. Az eredetiből archiválva : 2012. június 15. (határozatlan)
- ↑ SQLAlchemy funkciók . Hozzáférés időpontja: 2012. július 30. Az eredetiből archiválva : 2012. június 15. (határozatlan)
- ↑ Copeland, 2008 , p. tizenöt.
- ↑ SQLAlchemyDA – új egyesített adatbázis-adapter a Zope 2-höz . Letöltve: 2012. augusztus 4. Az eredetiből archiválva : 2008. május 30. (határozatlan)
- ↑ SQLAlchemy . Letöltve: 2019. október 22. Az eredetiből archiválva : 2019. november 3.. (határozatlan)
Linkek
Irodalom
- Rick Copeland. Essential SQLAlchemy. - O'Reilly Media., 2008. - 215 p. - ISBN 0-596-51614-2 .
- Tarek Ziade. Szakértő Python programozás. - Packt Kiadó Kft., 2008. - 372 p. — ISBN 978-1-847194-94-7 .
Piton |
---|
Közösség |
|
---|
Megvalósítások |
|
---|
Egyéb |
|
---|