SQLAlchemy: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 124:
Session = sessionmaker(bind=engine)
</source>
 
В случае же, если наше приложение не имеет ''Engine''-объекта базы данных, можно просто сделать так:
<source lang=python>Session = sessionmaker()</source>
А потом, когда вы создадите подключение к базе с помощью ''create_engine()'', соедините его с сессией, используя ''configure()'':
<source lang=python>Session.configure(bind=engine) # Как только у вас появится engine</source>
 
Такой класс ''Session'' будет создавать Session-объекты, которые привязаны к нашей базе. Другие транзакционные параметры тоже можно определить вызовом sessionmaker()’а, но они будут описаны в следующей главе. Так, когда вам необходимо общение с базой, вы создаете объект класса ''Session'':
Такой класс ''Session'' будет создавать Session-объекты, которые привязаны к нашей базе.
 
Такой класс ''Session'' будет создавать Session-объекты, которые привязаны к нашей базе. Другие транзакционные параметры тоже можно определить вызовом sessionmaker()’а, но они будут описаны в следующей главе. Так, когда вам необходимо общение с базой, вы создаете объект класса ''Session'':
<source lang=python>session = Session()</source>
Сессия здесь ассоциирована с SQLite, но у нее еще нет открытых соединений с этой базой. При первом использовании она получает соединение из набора соединений, который поддерживается engine и удерживает его до тех пор, пока мы не применим все изменения и/или не закроем объект сессии.