Tag: sqlalchemy

SQLalchemy указывает, какой индекс использовать

Есть ли способ в SQLalchemy указать запрос, какой индекс использовать? Причина, по которой я нуждаюсь в этом, – это то, что генерируемые SQL-запросы используют «неправильный» индекс – существует индекс точно для двух полей, которые у меня есть, и он не использует его. Благодаря!

Проблемы с scoped_session в sqlalchemy – как это работает?

Я не уверен, как работает scoped_session, кроме того, что это оболочка, которая скрывает несколько реальных сеансов, сохраняя их отдельными для разных запросов. Это делает это с помощью локаторов потоков? В любом случае проблема следующая: S = elixir.session # = scoped_session(…) f = Foo(bar=1) S.add(f) # ERROR, f is already attached to session (different session) Не […]

Flask-SQLAlchemy: не удается повторно подключиться до отмены отката транзакции

Поэтому я использую Amazon Web Services RDS для запуска сервера MySQL и использования флаговой оболочки Python для запуска сервера приложений и Flask-SQLAlchemy для взаимодействия с RDS. Мое приложение config.py SQLALCHEMY_DATABASE_URI = '<RDS Host>' SQLALCHEMY_POOL_RECYCLE = 60 Мой __ init __.py from flask import Flask from flask.ext.sqlalchemy import SQLAlchemy application = Flask(__name__) application.config.from_object('config') db = SQLAlchemy(application) […]

Как рассчитать кумулятивное скользящее среднее в Python / SQLAlchemy / Flask

Я расскажу о каком-то контексте, так что это имеет смысл. Я забираю Оценки клиентов для продуктов в таблице (Рейтинг) и хочу иметь возможность вернуть кумулятивную скользящую среднюю оценки, основанные на времени. Базовый пример следует за оценкой в ​​день: 02 FEB – Rating: 5 – Cum Avg: 5 03 FEB – Rating: 4 – Cum Avg: […]

SQLAlchemy, Flask: получить отношения из db.Model

Мне нужно получить список свойств модели, которые на самом деле являются отношениями (то есть они были созданы relationship() ). Скажем, у меня есть модель Foo в models : class Thing(db.Model): id = db.Column(…) bar_id = db.Column(…) foo_id = db.Column(…) foo = db.relationship('Foo') bar = db.relationship('Bar') Позже я хочу взять models.Thing и получить список свойств отношений, […]

Ошибка SQLAlchemy Сервер MySQL ушел

Ошибка OperationalError: (OperationalError) (2006, 'MySQL server has gone away') Я уже получил эту ошибку, когда я закодировал проект на Flask, но я не могу понять, почему я получаю эту ошибку. У меня есть код (да, если код небольшой и выполняется быстро, а затем нет ошибок), как это \ db_engine = create_engine('mysql://root@127.0.0.1/mind?charset=utf8', pool_size=10, pool_recycle=7200) Base.metadata.create_all(db_engine) Session […]

Flask-SQLAlchemy – Когда создаются и уничтожаются таблицы / базы данных?

Я немного смущен тем, о чем упоминается в названии. Итак, когда приложение Flask запущено, SQLAlchemy ищет SQLALCHEMY_DATABASE_URI для правильной, в моем случае, базы данных MySQL. Затем создает таблицы, если они уже не существуют? Что делать, если база данных, запрограммированная в переменной SQLALCHEMY_DATABASE_URI в файле config.py , не существует? Что делать, если эта база данных существует, […]

Как сделать JOIN в SQLAlchemy на 3 таблицах, где один из них является сопоставлением между двумя другими?

Предположим, что у меня есть следующие таблицы: Articles с полями article_id , title Tags с поля tag_id , name ArticleTags с полями article_id , tag_id И я хочу найти все статьи, которые имеют данный тег. Как создать это сложное соединение в SQLAlchemy? В SQL это будет выглядеть так: SELECT a.article_id, a.title FROM Articles AS a […]

SQLAlchemy delete не каскадирует

Моя модель User имеет отношение к модели Address . Я указал, что отношения должны каскадировать операцию удаления. Однако, когда я запрашиваю и удаляю пользователя, я получаю сообщение об ошибке, что строка адреса по-прежнему ссылается. Как удалить пользователя и адреса? class User(db.Model): id = db.Column(db.Integer, primary_key=True) addresses = db.relationship('Address', cascade='all,delete', backref='user') class Address(db.Model): id = db.Column(db.Integer, […]

Python, параметры SQLAlchemy передаются в connection.execute

Я использую SQLAlchemy connection.execute (sql) для преобразования результатов выбора в массив карт. Есть следующий код def __sql_to_data(sql): result = [] connection = engine.connect() try: rows = connection.execute(sql) for row in rows: result_row = {} for col in row.keys(): result_row[str(col)] = str(row[col]) result.append(result_row) finally: connection.close() return result и, например, __sql_to_data(sql_get_scan_candidate) дает мне хорошую структуру данных (конечно, […]

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