Tag: sqlalchemy

Об обновлении объектов в сеансе sqlalchemy

Ну, я имею дело с сомнением в sqlalchemy и освежающих предметах! Я нахожусь в ситуации, когда у меня есть 2 сеанса, и один и тот же объект был запрошен в обеих сессиях! … Для некоторых вещей я не могу закрыть одну из сессий. Я изменил объект и совершил изменения в сеансе A, но в сеансе […]

Как сгенерировать файл с DDL в диалоговом окне SQL в SQLAlchemy?

Предположим, у меня есть engine указывающий на базу данных MySQL: engine = create_engine('mysql://arthurdent:answer42@localhost/dtdb', echo=True) Я могу заполнить dtdb таблицами, FK и т. Д.: metadata.create_all(engine) Есть ли простой способ генерации SQL-файла, который содержит все инструкции DDL вместо фактического применения этих операторов DDL для dtdb ? До сих пор я прибегал к захвату вывода журнала SQLAlchemy, создаваемого […]

Что происходит, когда пул соединений исчерпан?

Я читаю о пуле соединений SQLAlchemy, который по умолчанию имеет 5 соединений и по умолчанию будет переполняться до 10. Если количество кешированных соединений превышено, что происходит? Являются ли последующие запросы поставленными в очередь до тех пор, пока не будет доступно бесплатное соединение или не будет создано новое соединение, не входящее в пул? Кроме того, что […]

Как создать ссылку на чужой ключ с sqlalchemy

Привет, я не могу понять, как сделать ссылку на чужие ключи, используя sqlalchemy. Я создал новый клиент таблицы в моей базе данных: class Client(DeclarativeBase): __tablename__ = 'client' id = Column(Integer, primary_key=True) user_id = Column( Integer, ForeignKey('user.id', ondelete='CASCADE'), nullable=False, index=True, ) orgname = Column(Unicode, nullable=False) def __init__(self, **kwargs): super(Client, self).__init__(**kwargs) Не пытаюсь сделать что-то подобное u […]

sqlalchemy postgresql где int = string

У меня есть 0 опыт работы с postgresql, и я развертываю приложение, написанное на python, используя sqlalchemy на сервере с postgres. Для разработки я использовал сервер sqlite. Все идет довольно гладко, но я ударил удар, я не знаю, как его решить. У меня три таблицы, которые выглядят так: class Car(db.Model): id= db.Column(db.Integer, primary_key=True) … class […]

Использование «aliased» в ORM SQLAlchemy

Из учебника ORM SQLAlchemy : Вы можете управлять именами, используя конструкцию label () для скалярных атрибутов и псевдонимов для конструкций класса: >>> from sqlalchemy.orm import aliased >>> user_alias = aliased(User, name='user_alias') >>> for row in session.query(user_alias, user_alias.name.label('name_label')).all(): … print row.user_alias, row.name_label Это, кажется, намного более типизированное и намного менее читаемое, чем простые дескрипторы, основанные на […]

Несколько самореферентных отношений в SQLAlchemy

У меня есть модель базы данных, где мне нужны отношения «один ко многим» и два отношения «один-к-одному». Вот модель, которую я сделал, но она бросает ошибки class Page(Base): __tablename__ = 'pages' id = Column(Integer, primary_key=True) title = Column(String(100), nullable=False) content = Column(Text, nullable=False) parent_id = Column(Integer, ForeignKey("pages.id"), nullable=True) children = relationship("Page", backref=backref("parent", remote_side=id)) next_id = […]

В чем разница между .one () и .first ()

В чем разница между one и first методом в SQLAlchemy

Flask и SqlAlchemy, как удалить записи из таблицы ManyToMany?

У меня возникают проблемы с удалением записей из таблицы PostTag, содержащей столбец Post и Tag. Это моя таблица отношений: tags = db.Table('PostTag', db.Column('Tag', db.Integer, db.ForeignKey('Tag.Id')), db.Column('Post', db.Integer, db.ForeignKey('Post.Id')) ) а также tags = db.relationship(Tag, secondary=tags, backref=db.backref('Post', lazy='dynamic')) Когда я это делаю: from models.Post import Post posts = Post.query.join(Post.tags).filter(Post.Id == id).all() if(posts): return posts return False […]

как сделать соединение в запросе сессии sqlalchemy?

Мне нужно найти эквивалент этого запроса в sqlalchemy. SELECT u.user_id, u.user_name, c.country FROM table_user u , table_country c WHERE u.user_email = 'abc@def.com' Я попробовал этот ниже код: session.query(User).join(Country.country).filter(User.user_email == 'abc@def.com').first() и это дало мне ошибку ниже: AttributeError: 'ColumnProperty' object has no attribute 'mapper' может ли кто-нибудь привести пример запроса соединения с таблицами, сопоставленными с новыми […]

Python - лучший язык программирования в мире.