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

Какие задачи выполнял с базами данных

В Python для работы с БД чаще всего используют ORM (SQLAlchemy, Django ORM) или низкоуровневые драйверы (psycopg2, sqlite3).

Основные подходы:

  1. SQLite (встроенная):
python
import sqlite3
conn = sqlite3.connect('test.db')
cursor = conn.cursor()
cursor.execute("CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT)")
conn.commit()
conn.close()
  1. PostgreSQL/MySQL (psycopg2/mysql-connector):
python
import psycopg2
conn = psycopg2.connect(dbname='test', user='user', password='pass')
cursor = conn.cursor()
cursor.execute("SELECT * FROM users")
rows = cursor.fetchall()
  1. ORM (SQLAlchemy):
python
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.orm import sessionmaker
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:///test.db')
Session = sessionmaker(bind=engine)
session = Session()
user = User(name='Alice')
session.add(user)
session.commit()

Ключевые моменты:

  • Всегда закрывай соединения (conn.close()) или используй контекстные менеджеры (with).
  • Для безопасности применяй параметризованные запросы (cursor.execute("... WHERE id = %s", (user_id,))).
  • ORM упрощает работу, но может быть менее эффективен для сложных запросов.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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