我在migrationtool上编码,用于将DDL和原始数据从DB2数据库带到mssql数据库。当我通过SQL Alchemy ORM反映我的数据库时,我得到了同行错误:
File "C:\Python27\lib\site-packages\sqlalchemy\sql\schema.py", line 2877, in __init__
"ForeignKeyConstraint with duplicate source column "
sqlalchemy.exc.ArgumentError: ForeignKeyConstraint with duplicate source column references are not supported.
我在互联网上寻找解决方案的时间,但我很无奈。如果你能帮助我会很棒。这是代码: (我的代码的最后一行是例外)
elif type == "db2":
self.engine = create_engine("db2+ibm_db://{}:{}@{}:{}/{}".format(user,
password,
server,
port,
dbname),
echo=log)
else:
print(u"Nicht unterstützte Quelldatenbank!")
SystemExit()
# check if engine is working
assert isinstance(self.engine.connect, object)
# reflect the tables
self.Base.prepare(self.engine, reflect=True)
这是ddl: enter image description here
更新: 我看到了其中一张桌子"是一个别名表。也许这有帮助。
先感谢德国 Jassin