Встречается на собеседованиях • сегодня

Зачем нужна ORM

ORM (Object-Relational Mapping) позволяет работать с базой данных через объекты Python, абстрагируясь от SQL. Это упрощает разработку, делает код чище и безопаснее (меньше шансов на SQL-инъекции).

Преимущества:

  • Автоматизирует CRUD-операции
  • Позволяет использовать Python-синтаксис вместо SQL
  • Поддерживает миграции схемы БД
  • Кросс-платформенность (работа с разными СУБД)

Пример с SQLAlchemy:

python
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base

Base = declarative_base()

class User(Base):
    __tablename__ = 'users'
    id = Column(Integer, primary_key=True)
    name = Column(String)

engine = create_engine('sqlite:///users.db')
Base.metadata.create_all(engine)

# Добавление пользователя без прямого SQL
user = User(name="Alice")
session.add(user)
session.commit()

Минусы:

  • Производительность иногда ниже, чем у чистого SQL
  • Сложные запросы могут быть менее читаемыми
  • Требует изучения синтаксиса ORM
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы