Tag: sqlalchemy

Как обновить все столбцы объектов в SqlAlchemy?

У меня есть таблица пользователей (более 15 столбцов), и иногда мне нужно полностью обновить все пользовательские атрибуты. Для примера, я хочу заменить user_in_db = session.query(Users).filter_by(user_twitter_iduser.user_twitter_id).first() с каким-либо другим объектом. Я нашел следующее решение: session.query(User).filter_by(id=123).update({"name": user.name}) но я упал, что все 15+ атрибутов подвержены ошибкам, и должно существовать более простое решение.

Приложение PyQt с базой данных sqlalchemy

Я попытался создать приложение PyQt , и данные хранятся в базе данных. Я хочу использовать sqlachemy для доступа к моим данным и отображения данных с помощью модели в PyQt. В этом примере я использовал combobox для отображения моих данных. Мой код «работает» плохой, потому что модель проверяет базу данных тысячи раз каждый раз, когда я […]

Правило зависимостей пыталось исключить пустой столбец первичного ключа в SQL-Alchemy при попытке удалить запись

У меня есть много отношений между таблицей Userownedshare таблицей Share . Когда я удаляю запись Userownedshare из базы данных, я получаю следующее сообщение об ошибке: AssertionError: Dependency rule tried to blank-out primary key column 'share.ticker' Это имеет смысл, поскольку поле ticker в Userownedshare является внешним ключом в таблице Share . Однако я не могу решить, […]

Включение SQL-команд для SQLAlchemy / Pyramid из командной строки

Я использую Pyramid с SQLAlchemy, и у меня есть следующий раздел в моем development.ini : [logger_sqlalchemy] # level = INFO level = WARN handlers = qualname = sqlalchemy.engine Всякий раз, когда я хочу включить SQL statement / echo, я редактирую этот файл и изменяю комментарий, чтобы он стал level = INFO . Мой вопрос: как […]

Косвенный доступ к атрибуту экземпляра Python без использования точечной нотации

Учитывая пару простых таблиц в sqlalchemy которые имеют отношение «один к одному», я пытаюсь написать обобщенную функцию для добавления дочерних элементов в коллекцию отношений. Таблицы выглядят так: class StockItem(Base): __tablename__ = 'stock_items' stock_id = Column(Integer, primary_key=True) description = Column(String, nullable=False, unique=True) department = Column(String) images = relationship('ImageKey', backref='stock_item', lazy='dynamic') def __repr__(self): return '<StockItem(Stock ID:{}, Description: […]

Запрос str на SQL alchemy Query

На самом деле у меня есть код, который извлекает необходимые данные из текстового файла. Здесь я извлекаю некоторый идентификатор из текстового файла. Затем мне нужно передать то же самое в запрос SQLAlchemy, чтобы получить результаты. Но я не получаю результаты по мере необходимости. здесь это код: addys = ','.join('"{}"'.format(''.join(tenant)) for tenant in tenants if tenant) […]

Запрос SQLAlchemy Python с использованием помеченной надписи OVER с ORM

В этом другом вопросе говорится, как использовать предложение OVER для sqlalchemy: Использование функции окна OVER в SQLAlchemy Но как это сделать с помощью ORM? У меня есть что-то вроде: q = self.session.query(self.entity, func.count().over().label('count_over')) Это не удается, когда я вызываю q.all() со следующим сообщением: sqlalchemy.exc.InvalidRequestError: Ambiguous column name 'count(*) OVER ()' in result set! try 'use_labels' […]

Как использовать условный оператор или_ в sqlalchemy с условным if?

Существующий фрагмент кода: if sup_usr_only: query_ob = query_ob.filter( or_( and_( Department.id.in_(login_user.department_ids), # logic is OK – checked. model.visibility == VISIBLE_DEPT ), and_( model.visibility == VISIBLE_COMPANY, model.company_id == login_user.company_id )) ) else: query_ob = query_ob.filter( or_( and_( Department.id.in_(login_user.department_ids), # logic is OK – checked. model.visibility == VISIBLE_DEPT ), model.visibility == VISIBLE_GLOBAL, and_( model.visibility == VISIBLE_COMPANY, model.company_id […]

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

это мой код, запрос Notification.create_time result = session.query( Notification.content, cls.is_read, Notification.create_time).join( cls, Notification.id == cls.notification).filter( and_(cls.user == user_id)).order_by( Notification.create_time.desc()).all() в другом месте нужно json.dumps результат запроса к frontend, формат datetime cann't json.dumps, поэтому я хочу сделать вот так: session.query(Notification.create_time.strftime('%Y-%m-%d %H:%M')) так, как изменить дату и время на строку в запросе sqlalchemy?

Использование SQLAlchemy с несколькими самореферентными внешними ключами

Что делать, если у меня есть что-то вроде двойного связанного списка в реляционной базе данных, например: node_id left_id right_id 1 null 2 2 1 3 3 2 null Тогда у меня есть код SQLAlchemy, например: class NodeClass(Base): __tablename__ = 'nodes_table' node_id = Column(Integer, primary_key=True) left_id = Column(Integer, ForeignKey('nodes_table.node_id')) right_id = Column(Integer, ForeignKey('nodes_table.node_id')) left = relationship('NodeClass') […]

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