Python sqlalchemy 一次插入数据到多个表
Python Sqlalchemy insert Data into multiple tables at once
我有多个定义相同的表,我需要在每个表中添加相同的数据。我想创建一个列表并使用它来添加数据。
现在:
test1 = Data_1(Test = Test)
session.add(test1)
test2 = Data_2(Test = Test)
session.add(test2)
test3 = Data_3(Test = Test)
session.add(test3)
session.commit()
我想要的:
Sql_Data = (Test = Test) # What could i use?
test1 = Data_1(Sql_Data)
session.add(test1)
test2 = Data_2(Sql_Data)
session.add(test2)
test3 = Data_3(Sql_Data)
session.add(test3)
session.commit()
感谢您的帮助:)
您可以将所有数据存储在字典中并从中构建您的实例:
data = {'Test': 'Test'}
classes = [Data_1, Data_2, Data_3]
to_insert = [class_(**data) for class_ in classes]
session.add_all(to_insert)
session.commit()
我有多个定义相同的表,我需要在每个表中添加相同的数据。我想创建一个列表并使用它来添加数据。
现在:
test1 = Data_1(Test = Test)
session.add(test1)
test2 = Data_2(Test = Test)
session.add(test2)
test3 = Data_3(Test = Test)
session.add(test3)
session.commit()
我想要的:
Sql_Data = (Test = Test) # What could i use?
test1 = Data_1(Sql_Data)
session.add(test1)
test2 = Data_2(Sql_Data)
session.add(test2)
test3 = Data_3(Sql_Data)
session.add(test3)
session.commit()
感谢您的帮助:)
您可以将所有数据存储在字典中并从中构建您的实例:
data = {'Test': 'Test'}
classes = [Data_1, Data_2, Data_3]
to_insert = [class_(**data) for class_ in classes]
session.add_all(to_insert)
session.commit()