В моем проекте я использовал одну базу данных для каждой вещи (пользователи, клиенты, датчики, sensor_data и т. Д. c), но теперь я разделяю базу данных на пользователей, клиентов ... и данные. в таблицах данных мне нужны необработанные пользовательские SQL запросы, например:
def between(sensor_id, datetime_1: datetime, datetime_2: datetime):
data = createDbTable(sensor_id)
s = data.select().where(data.c.datetime.between(datetime_1, datetime_2)).order_by(data.c.datetime)
with db.engine.connect() as con:
conResult = con.execute(s)
result = DataModel(sensor_id, dict_output=False)
for item in conResult:
result.append(DataStruct(item[0], item[1]))
return result
Я сомневаюсь, «Как я могу выбрать базу данных в db.engine.connect?». Моя конфигурация базы данных такая:
SQLALCHEMY_DATABASE_URI = database_url(user='api_user',
password='...',
server='...',
database='Project')
SQLALCHEMY_BINDS = {
'data': database_url(user='api_user',
password='...',
server='...',
database='ProjectData')
}