Я создал несколько классов в SQLAlchemy для представления моих различных таблиц. Теперь я хочу вставить записи в эти таблицы из различных CSV-файлов, которые содержат данные в ненормализованном формате. Как лучше всего обращаться с внешними ключами?
В упрощенной модели у меня есть две таблицы: дочерняя и родительская, с отношением один ко многим. Родительская таблица уже заполнена уникальным parent_name для каждого первичного ключа. В настоящее время я делаю это:
for index, row in df.iterrows():
u = session.query(Parent).filter_by(parent_name=row['parent_name']).first()
session.add(Child(child_name=row['child_name'], parent_id=u.id))
Есть ли способ с sqlalchemy, чтобы избежать первого запроса? Этот вопрос подразумевает, что использование отношений является правильным / простым способом сделать это, но объясняет только трудный путь.