FetchXmlQuery Osztály

Inert FetchXML lekérdezési objektum. A http-kérések nem lesznek megadva, amíg meg nem hívják vagy execute_pages meg execute nem hívják.

A lekért adatok client.query.fetchxml(xml): .

Konstruktor

FetchXmlQuery(xml: str, entity_name: str, client: DataverseClient)

Paraméterek

Name Description
xml
Kötelező

Csíkozott, jól formázott FetchXML sztring.

entity_name
Kötelező

Entitásséma neve az <entity> elemből.

client
Kötelező

Szülő DataverseClient.

Metódusok

execute

Hajtsa végre a FetchXML lekérdezést QueryResult, és adja vissza az összes eredményt.

Blokkolás – az összes oldalt előre beolvassa, és a visszatérés előtt minden rekordot tárol a memóriában. Kis-közepes eredményhalmazokhoz egyszerű; akkor használja execute_pages , ha az eredményhalmaz nagy lehet, vagy ha a rekordokat a beérkezéskor szeretné feldolgozni.

Example:


   rows = client.query.fetchxml(xml).execute()
   df = rows.to_dataframe()
execute_pages

Lazily hozam egy QueryResult HTTP-oldalonként.

Streamelés – minden iteráció egy HTTP-kérést aktivál, és egy oldalt ad meg. Előnyben részesítse a execute következő esetekben:

  • Az eredményhalmaz nagy lehet, és nem szeretné, hogy az összes rekord egyszerre legyen a memóriában.

  • Korai kilépést szeretne: állítsa le az iterálást, miután megtalálta, amire szüksége van, és a fennmaradó HTTP-körutazások automatikusan kimaradnak.

  • Laponkénti állapotjelentésre vagy kötegelt alsóbb rétegbeli írásra van szükség.

Egylövetű – ne iterálja többször.

Example:


   for page in client.query.fetchxml(xml).execute_pages():
       process(page.to_dataframe())

execute

Hajtsa végre a FetchXML lekérdezést QueryResult, és adja vissza az összes eredményt.

Blokkolás – az összes oldalt előre beolvassa, és a visszatérés előtt minden rekordot tárol a memóriában. Kis-közepes eredményhalmazokhoz egyszerű; akkor használja execute_pages , ha az eredményhalmaz nagy lehet, vagy ha a rekordokat a beérkezéskor szeretné feldolgozni.

Example:


   rows = client.query.fetchxml(xml).execute()
   df = rows.to_dataframe()
execute() -> QueryResult

Válaszok

Típus Description

Minden egyező rekord az összes oldalon.

execute_pages

Lazily hozam egy QueryResult HTTP-oldalonként.

Streamelés – minden iteráció egy HTTP-kérést aktivál, és egy oldalt ad meg. Előnyben részesítse a execute következő esetekben:

  • Az eredményhalmaz nagy lehet, és nem szeretné, hogy az összes rekord egyszerre legyen a memóriában.

  • Korai kilépést szeretne: állítsa le az iterálást, miután megtalálta, amire szüksége van, és a fennmaradó HTTP-körutazások automatikusan kimaradnak.

  • Laponkénti állapotjelentésre vagy kötegelt alsóbb rétegbeli írásra van szükség.

Egylövetű – ne iterálja többször.

Example:


   for page in client.query.fetchxml(xml).execute_pages():
       process(page.to_dataframe())
execute_pages() -> Iterator[QueryResult]

Válaszok

Típus Description

Oldalonkénti QueryResult objektumok iterátora.