Перекрестное соединение баз данных в sqlalchemy

Есть ли в SQLAlchemy способ выполнять соединения между базами данных. Чтобы быть конкретным, вот мой вариант использования:

Схема

  1. db1.entity1
    1. entity1_id: Первичный ключ
    2. entity2_id: Внешний ключ к db2.entity2.entity2_id
  2. db2.entity2
    1. entity2_id: Первичный ключ

Модель

Я использую декларативный стиль для моделей.

class Entity1(Base):
  __tablename__ = 'entity1' ## I tried combination of <db>.<table> with no success
  entity1_id = Column(Integer, primary_key=True)
  entity2_id = Column(Integer, ForeignKey('db2.entity2.entity2_id'))
  entity2 = relationship('Entity2')

class Entity2(Base):
  __tablename__ = 'entity2' ## I tried combination of <db>.<table> with no success
  entity2_id = Column(Integer, primary_key=True)

Теперь, как и ожидалось, мои запросы для Entity1 не работают с сообщениями об ошибках MySQL, в которых говорится о таблице entity2 не найден. Я пробовал много разных комбинаций для __ tablename __ , но безуспешно. Поэтому мне было интересно, возможно ли это в SQLAlchemy.

16
задан Vikas 22 June 2011 в 00:32
поделиться