データのクエリ
接続 の手順を使用して接続し、メタデータの反映 メソッドのいずれかを使用してメタデータの一部を反映させたら、セッションオブジェクトを使用してデータをクエリできます。
query メソッドを使用したデータのクエリ
マッピングクラスが用意されている場合は、セッションオブジェクトと併用してデータソースをクエリします。エンジンをセッションにバインドしたら、マッピングクラスをセッションのクエリメソッドに提供します。次に例を示します。
engine = create_engine("exchange:///?User='myUser@mydomain.onmicrosoft.com';Password='myPassword';Server='https://outlook.office365.com/EWS/Exchange.asmx';Platform='Exchange_Online';Schema='EWS';") factory = sessionmaker(bind=engine) session = factory() for instance in session.query(Contacts).filter_by(BusinessAddress_City="Raleigh"): print("ItemId: ", instance.ItemId) print("LastModifiedByName: ", instance.LastModifiedByName) print("GivenName: ", instance.GivenName) print("---------")
execute メソッドを使用したデータのクエリ
セッションオブジェクトは、適切なテーブルオブジェクトと一緒にexecute() メソッドを使用してクエリを実行することもできます。アクティブなセッションがあると仮定すると、以下は同様に実行可能です。Contacts_table = Contacts.metadata.tables["Contacts"] for instance in session.execute(Contacts_table.select().where(Contacts_table.c.BusinessAddress_City == "Raleigh")): print("Id: ", instance.Id) print("FullName: ", instance.Name) print("City: ", instance.BillingCity) print("---------")