我有几个表和许多列,应该插入数据。我不想再次键入列的名称,因为我已经在“SQLAlchemy类定义”中键入了它们。你知道吗
从其他问题张贴,我看到你可以得到与下面的代码列的名称。你知道吗
for c in datatable.__table__.columns.keys():
print(c)
这将给出列名。但是,我想要的是向列中插入数据,而不仅仅是读取列名。下面是我试过的。你知道吗
for_counter = 0
for instance in SESSION.query(SampleClass).filter(SampleClass.id == 2):
instance.__table__.columns.keys()[(for_counter)] = "texttoinsert"
for_counter += 1
我以为我可以用这个“索引”列,但当代码运行并检查数据库时,只有自动递增的“ID”列和设置为默认值的日期才能获得数据。“instance”中的所有其他列都没有得到任何数据,而我希望在这些列中找到“texttoinsert”。你知道吗
基本上,我只想构建一个函数,只要指定了表的名称,就可以“使用”列索引来插入数据。有办法做到这一点吗?你知道吗
for循环正在替换
instance.__table__.columns.keys()
数组中的值,而不是在instance
上设置相应的属性。这应该可以做到:另外,由于所有实例都具有相同的键,因此反转这两个循环将导致更好的性能(不需要每次都重新创建键数组)。你知道吗
相关问题 更多 >
编程相关推荐