Junior — Middle
101
Kako razlikovati korišćenje ORM od pisanja direktnih SQL upita prilikom rada sa bazom podataka?
Компаније где су питане
GGSel
Одговор од АИ
sobes.tech АИ
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 требует писать запросы вручную и обрабатывать результаты.