SQLAlchemy: различия между версиями
Содержимое удалено Содержимое добавлено
Строка 140:
<source lang=python>>>> ourUser = session.query(User).filter_by(name="vasia").first()
<User('vasia','Vasiliy Pypkin', 'vasia2000')></source>
На самом деле сессия определила, что та запись из таблицы, что она вернула, та же самая, что а запись, что она уже представляла в своей внутренней хеш-таблицу объектов. Так что мы просто
Та концепция ORM, что работает здесь, известная как ''карта идентичности'', обеспечивает, что все операции над конкретной записью внутри сессии оперируют одним и тем же набором данных. Как только объект с неким первичным ключом появится в сессии, все SQL-запросы на этой сессии вернут тот же самые питоний объект для этого самого первичного ключа. Будет выдана ошибка в случае попытки поместить в эту сессию другой, уже сохраненный объект с тем же первичным ключом.
Мы можем добавить больше User-объектов, использовав ''add_all()''
|