4
あるデータベースから別のデータベースにオブジェクトを移動しようとしています。マッピングは同じですが、テーブルは異なります。これは、古いデータベースのデータを新しいデータベースにインポートする必要があるマージツールです。それでも、私はSQLAlchemyに関する基本的な何かが欠けていると思います。それは何ですか?あるデータベースから別のデータベースにオブジェクトを移動できません
from sqlalchemy import Column, Float, String, Enum
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import orm
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
DeclarativeBase = declarative_base()
class Datum (DeclarativeBase):
__tablename__ = "xUnitTestData"
Key = Column(String, primary_key=True)
Value = Column(Float)
def __init__ (self, k, v):
self.Key = k
self.Value = v
src_engine = create_engine('sqlite:///:memory:', echo=False)
dst_engine = create_engine('sqlite:///:memory:', echo=False)
DeclarativeBase.metadata.create_all(src_engine)
DeclarativeBase.metadata.create_all(dst_engine)
SessionSRC = sessionmaker(bind=src_engine)
SessionDST = sessionmaker(bind=dst_engine)
item = Datum('eek', 666)
session1 = SessionSRC()
session1.add(item)
session1.commit()
session1.close()
session2 = SessionDST()
session2.add(item)
session2.commit()
print item in session2 # >>> True
print session2.query(Datum).all() # >>> []
session2.close()
はい、私はそれが優しくないようにするのを避けたかったのです。ああよく... – Sardathrion
質問はテーブル間のコピー方法でした。 SQLAlchemyが単純なテーブルコピーを実行できない場合や、それを行う方法がわからない場合は、そう言います。 –