我对SQLAlchemy ORM有点陌生,我试图从一个视图中的列中选择并存储数据,该视图中的列名称为正斜杠。
数据库使用以下方式映射:
source_engine = create_engine("...")
base = automap_base()
base.prepare(source_engine, reflect=True)
metadata = MetaData(self.engine)
table_1 = Table("table_1", self.metadata, autoload=True)
第二个目标表的映射方式相同。
然后,我连接到这个数据库,并且我试图从列中选择要复制到不同数据库的信息:
^{pr2}$但是,问题是视图中有一个名为“Slot/Port”的列
通过直接查询,可以执行以下操作:
^{pr3}$但是在ORM中,您不能只键入:
^{pr4}$或者
newrow.'Slot/Port' = instance.'Slot/Port'
这是不正确的,下面的也不起作用:
newrow.SlotPort = instance.SlotPort
AttributeError:“result”对象没有属性“SlotPort”
我无法控制如何在源数据库中命名列。
我发现SQLAlchemy文档通常是零碎的(只显示代码的小片段),而且很混乱,所以我不确定这是不是解决了。是否有办法绕过这个限制,或者如果列已经映射到一个没有斜杠的有效名称,或者是这样做的方法?
感谢@DeepSpace帮我找到答案。在
而不是
我需要:
^{pr2}$相关问题 更多 >
编程相关推荐