FetchXmlQuery 類別
Inert FetchXML 查詢物件。 在被呼叫之前executeexecute_pages,不會有 HTTP 請求。
資料來源:。client.query.fetchxml(xml)
建構函式
FetchXmlQuery(xml: str, entity_name: str, client: DataverseClient)
參數
| 名稱 | Description |
|---|---|
|
xml
必要
|
被剝離、結構良好的 FetchXML 字串。 |
|
entity_name
必要
|
實體結構名稱來自元素。 |
|
client
必要
|
父母 DataverseClient。 |
方法
| execute |
執行 FetchXML 查詢,並將所有結果以 QueryResult. 區塊 — 先取得所有頁面,並將所有記錄存於記憶體中再返回。 對於小到中型結果集來說很簡單;當結果集可能很大,或你想在記錄到手時處理時使用 execute_pages 。 範例:
|
| execute_pages |
懶散地在每個 HTTP 頁面產生一個 QueryResult 。 串流 — 每次迭代會觸發一個 HTTP 請求,產生一個頁面。 優先 execute 選擇:
一次性任務——不要重複修改超過一次。 範例:
|
execute
執行 FetchXML 查詢,並將所有結果以 QueryResult.
區塊 — 先取得所有頁面,並將所有記錄存於記憶體中再返回。 對於小到中型結果集來說很簡單;當結果集可能很大,或你想在記錄到手時處理時使用 execute_pages 。
範例:
rows = client.query.fetchxml(xml).execute()
df = rows.to_dataframe()
execute() -> QueryResult
傳回
| 類型 | Description |
|---|---|
|
所有頁面上的紀錄都相符。 |
execute_pages
懶散地在每個 HTTP 頁面產生一個 QueryResult 。
串流 — 每次迭代會觸發一個 HTTP 請求,產生一個頁面。 優先 execute 選擇:
結果集可能很大,你不希望所有紀錄同時存在記憶體。
你想要提前退出:一旦找到需要的,就停止迭代,剩餘的 HTTP 往返會自動跳過。
你需要每頁進度報告或批次下游寫入。
一次性任務——不要重複修改超過一次。
範例:
for page in client.query.fetchxml(xml).execute_pages():
process(page.to_dataframe())
execute_pages() -> Iterator[QueryResult]
傳回
| 類型 | Description |
|---|---|
|
每頁 QueryResult 物件的迭代器。 |