Junior — Middle
88
Ma'lumotlar bazasi bilan ishlashda ORM foydalanish bilan to'g'ridan-to'g'ri SQL so'rovlarini yozish o'rtasidagi farqni qanday ajratasiz?
Qaerda so'ralgan kompaniyalar
GGSel
AIdan javob
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 требует писать запросы вручную и обрабатывать результаты.