FetchXmlQuery Kelas
Objek kueri Inert FetchXML. Tidak ada permintaan HTTP yang dibuat sampai execute atau execute_pages dipanggil.
Diperoleh melalui client.query.fetchxml(xml).
Konstruktor
FetchXmlQuery(xml: str, entity_name: str, client: DataverseClient)
Parameter
| Nama | Deskripsi |
|---|---|
|
xml
Diperlukan
|
String FetchXML yang dilucuti dan terbentuk dengan baik. |
|
entity_name
Diperlukan
|
Nama skema entitas dari |
|
client
Diperlukan
|
Induk DataverseClient. |
Metode
| execute |
Jalankan kueri FetchXML dan kembalikan semua hasil sebagai QueryResult. Pemblokiran — mengambil semua halaman di muka dan menyimpan setiap rekaman dalam memori sebelum kembali. Sederhana untuk tataan hasil kecil hingga menengah; gunakan execute_pages ketika kumpulan hasil mungkin besar atau Anda ingin memproses rekaman saat tiba. Example:
|
| execute_pages |
Lazily menghasilkan satu QueryResult per halaman HTTP. Streaming — setiap iterasi mengaktifkan satu permintaan HTTP dan menghasilkan satu halaman. Lebih disukai daripada execute ketika:
Satu tembakan — jangan iterasi lebih dari sekali. Example:
|
execute
Jalankan kueri FetchXML dan kembalikan semua hasil sebagai QueryResult.
Pemblokiran — mengambil semua halaman di muka dan menyimpan setiap rekaman dalam memori sebelum kembali. Sederhana untuk tataan hasil kecil hingga menengah; gunakan execute_pages ketika kumpulan hasil mungkin besar atau Anda ingin memproses rekaman saat tiba.
Example:
rows = client.query.fetchxml(xml).execute()
df = rows.to_dataframe()
execute() -> QueryResult
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Semua rekaman yang cocok di semua halaman. |
execute_pages
Lazily menghasilkan satu QueryResult per halaman HTTP.
Streaming — setiap iterasi mengaktifkan satu permintaan HTTP dan menghasilkan satu halaman. Lebih disukai daripada execute ketika:
Kumpulan hasil mungkin besar dan Anda tidak ingin semua rekaman dalam memori sekaligus.
Anda ingin keluar lebih awal: berhenti iterasi setelah Anda menemukan apa yang Anda butuhkan dan perjalanan pulang pergi HTTP yang tersisa dilewati secara otomatis.
Anda memerlukan pelaporan kemajuan per halaman atau penulisan hilir batch.
Satu tembakan — jangan iterasi lebih dari sekali.
Example:
for page in client.query.fetchxml(xml).execute_pages():
process(page.to_dataframe())
execute_pages() -> Iterator[QueryResult]
Mengembalikan
| Jenis | Deskripsi |
|---|---|
|
Iterator objek per halaman QueryResult . |