Встречается на собеседованиях • сегодня
Можно ли в Django писать сырые SQL запросы
Да, в Django можно выполнять сырые SQL-запросы, используя connection.cursor() из django.db. Это полезно для сложных запросов, которые сложно выразить через ORM.
Пример:
python
from django.db import connection
def get_users():
with connection.cursor() as cursor:
cursor.execute("SELECT * FROM auth_user WHERE is_active = %s", [True])
rows = cursor.fetchall()
return rows
text
**Важно:**
- Используйте параметризованные запросы (`%s` вместо подстановки строк) для защиты от SQL-инъекций.
- Для моделей можно использовать `Model.objects.raw()`.
- ORM обычно предпочтительнее, так как обеспечивает безопасность и переносимость.
Для сложных JOIN или агрегаций сырой SQL может быть оправдан.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы