データのクエリ
接続 の手順を使用して接続し、メタデータの反映 メソッドのいずれかを使用してメタデータの一部を反映させたら、セッションオブジェクトを使用してデータをクエリできます。
query メソッドを使用したデータのクエリ
マッピングクラスが用意されている場合は、セッションオブジェクトと併用してデータソースをクエリします。エンジンをセッションにバインドしたら、マッピングクラスをセッションのクエリメソッドに提供します。次に例を示します。
engine = create_engine("workday:///?ConnectionType=SOAP;User=myuser;Password=mypassword;Tenant=mycompany;BaseURL=https://wd3-impl-services1.workday.com") factory = sessionmaker(bind=engine) session = factory() for instance in session.query([CData].[Human_Resources].Workers).filter_by(Legal_Name_Last_Name="Morgan"): print("Id: ", instance.Id) print("Worker_Reference_WID: ", instance.Worker_Reference_WID) print("Legal_Name_Last_Name: ", instance.Legal_Name_Last_Name) print("---------")
execute メソッドを使用したデータのクエリ
セッションオブジェクトは、適切なテーブルオブジェクトと一緒にexecute() メソッドを使用してクエリを実行することもできます。アクティブなセッションがあると仮定すると、以下は同様に実行可能です。[CData].[Human_Resources].Workers_table = [CData].[Human_Resources].Workers.metadata.tables["[CData].[Human_Resources].Workers"] for instance in session.execute([CData].[Human_Resources].Workers_table.select().where([CData].[Human_Resources].Workers_table.c.Legal_Name_Last_Name == "Morgan")): print("Id: ", instance.Id) print("FullName: ", instance.Name) print("City: ", instance.BillingCity) print("---------")