Sobes.tech
Junior — Middle
94

¿Cómo distinguir el uso de ORM de escribir consultas SQL directas al trabajar con una base de datos?

Empresas donde se preguntó
GGSel

Respuesta de la IA

sobes.tech AI

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

Прямые SQL-запросы — это когда вы пишете текстовые запросы SQL явно и отправляете их в базу данных, например, через курсор.

Пример с использованием SQLAlchemy ORM в Python:

# ORM
user = session.query(User).filter(User.id == 1).first()
print(user.name)

Пример прямого SQL-запроса:

cursor.execute("SELECT name FROM users WHERE id = %s", (1,))
name = cursor.fetchone()[0]
print(name)

Отличие в уровне абстракции: ORM скрывает SQL, работает с объектами, а прямой SQL требует писать запросы вручную и обрабатывать результаты.