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

Зачем использовать ORM, а не конструкторский запрос

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

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

  • Автоматическая генерация SQL (избегаем ручных ошибок)
  • Безопасность (защита от 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)

# Вставка данных
user = User(name="Alice")
session.add(user)
session.commit()

Когда использовать сырые SQL:

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

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

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

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