Мазмунга өтүү

Сабактын башталышы

Python'догу маалымат базалары жана ORM

sqlite3 модулунун төмөнкү деңгээлдеги DB-API'синен SQLAlchemy моделдерине, сессияларына жана миграцияларына чейин

Негизги идея: Реляциялык маалымат базасы процессиңизден кийин да сакталып калуучу, сурам берүүгө болгон жана конкуренттүү сактагычты берет. Python аны менен эки жол менен сүйлөшөт: төмөнкү деңгээлдеги DB-API (sqlite3), мында сиз SQL'ди колдон жазасыз, жана ORM (SQLAlchemy), ал таблица саптарын Python объекттерине чагылдырат, ошондуктан сиз негизинен Python'до иштейсиз. Бири экинчисин алмаштырбайт — ORM DB-API'нин үстүндө курулган, экөөнү тең билүү аң-сезимдүү тандоо жасоого мүмкүндүк берет.
Аягында сиз төмөнкүлөрдү жасай аласыз:
  • туташуу ачып, SQL'ди курсор аркылуу иштетип, sqlite3'те транзакцияны commit менен бекитүү,
  • SQL-инъекциядан коргонуу үчүн параметрленген сурамдарды колдонуу,
  • ORM эмнени жана эмне үчүн чагылдырарын түшүндүрүү,
  • SQLAlchemy 2.0 моделин аныктап, Session (иш бирдиги) менен башкаруу,
  • миграциялар (Alembic) кайсы маселени чечерин жана ORM'дин реалдуу компромисстерин сүрөттөө.

1. Эмне үчүн файл эмес, маалымат базасы?

Сиз JSON жана CSV окуп-жазганды билесиз. Файлдар бир жазуучусу бар кичине маалыматтар үчүн эң сонун. Маалымат базасы төмөнкүлөрдүн бири керек болгондо ордун актайт: сурамдар (баарын эстутумга жүктөбөй туруп «өткөн жумадагы 100'дөн кымбат буйрутмалардын баары»), конкуренттүүлүк (файлды бузбай көп окуучу жана жазуучу), бүтүндүк (кыймылдаткыч текшерген типтер, уникалдуулук, тышкы ачкычтар) жана транзакциялар (толугу менен же таптакыр болбой турган өзгөртүүлөр тобу).

SQLite — эң жумшак кириш: бул бир файлдын ичинде жашаган толук кандуу SQL кыймылдаткычы, Python менен sqlite3 модулу катары келет жана сервер талап кылбайт. Ушул жерде үйрөнгөн DB-API — стандарттык интерфейс (PEP 249), аны PostgreSQL үчүн psycopg да, MySQL драйверлери да ишке ашырат, ошондуктан формалар өткөрүлөт.

Бул сабакты YourAIZone платформасында улантыңыз

Толук сабакта — толук түшүндүрмө, чыгарылган мисалдар, көп кездешкен каталар, заматта текшерилүүчү тесттер жана ЖИ-репетитор. Конок катары дароо баштаңыз же прогрессти сактоо үчүн аккаунт түзүңүз.

Толук сабакта

  • Толук түшүндүрмө
  • Чыгарылган мисалдар
  • Көп кездешкен каталар жана алардан кантип качуу керек
  • Тест суроолору: 15
  • Тема боюнча суроолорго жооп берген ЖИ-репетитор
  • Окуучу, ата-эне жана мугалим үчүн прогрессти көзөмөлдөө