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

В чем преимущество ORM перед SQL

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

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

  • Абстракция от SQL – не нужно писать сложные запросы вручную.
  • Безопасность – ORM экранирует параметры, предотвращая SQL-инъекции.
  • Кроссплатформенность – код работает с разными СУБД (PostgreSQL, MySQL, SQLite).
  • Удобство – автоматическая генерация схемы, миграции, валидация данных.

Пример (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()

Недостатки: иногда ORM генерирует неоптимальные запросы, но для большинства задач это не критично.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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