ContainerProxy Třída
Rozhraní pro interakci s konkrétním kontejnerem databáze.
Tato třída by neměla být vytvořena přímo. Místo toho použijte metodu get_container_client k získání existujícího kontejneru nebo metodu create_container k vytvoření nového kontejneru.
Kontejner v databázi rozhraní SQL API služby Azure Cosmos DB je kolekce dokumentů, z nichž každý je reprezentován jako položka.
- Dědičnost
-
builtins.objectContainerProxy
Konstruktor
ContainerProxy(client_connection: CosmosClientConnection, database_link: str, id: str, properties: Dict[str, Any] = None)
Parametry
- client_connection
- database_link
- id
- properties
Proměnné
- id
- str
ID (název) kontejneru
- session_token
- str
Token relace pro kontejner.
Metody
create_item |
Vytvořte položku v kontejneru. Pokud chcete aktualizovat nebo nahradit existující položku, použijte metodu upsert_item . |
delete_all_items_by_partition_key |
Funkce odstranění podle klíče oddílu je asynchronní operace na pozadí, která umožňuje odstranit všechny dokumenty se stejnou hodnotou klíče logického oddílu pomocí sady Cosmos SDK. Operace odstranění podle klíče oddílu je omezená tak, aby spotřebovala maximálně 10 % celkového dostupného počtu RU/s kontejneru za sekundu. To pomáhá omezit prostředky používané touto úlohou na pozadí. |
delete_conflict |
Odstraňte zadaný konflikt z kontejneru. Pokud konflikt v kontejneru ještě neexistuje, je vyvolána výjimka. |
delete_item |
Odstraňte zadanou položku z kontejneru. Pokud položka v kontejneru ještě neexistuje, vyvolá se výjimka. |
get_conflict |
Získejte konflikt identifikovaný konfliktem. |
get_throughput |
Získejte objekt ThroughputProperties pro tento kontejner. Pokud pro kontejner ještě neexistují žádné vlastnosti propustnosti, dojde k výjimce. :keyword Volatable response_hook: Lze volat s metadaty odpovědi. :returns: Propustnost kontejneru. :raises ~azure.cosmos.exceptions.CosmosHttpResponseError: Pro kontejner neexistují žádné vlastnosti propustnosti nebo Vlastnosti propustnosti nelze načíst. |
list_conflicts |
Vypište všechny konflikty v kontejneru. |
patch_item |
Prozatímní metoda Opraví zadanou položku pomocí zadaných operací, pokud v kontejneru existuje. Pokud položka v kontejneru ještě neexistuje, vyvolá se výjimka. |
query_conflicts |
Vrátí všechny konflikty odpovídající danému dotazu. |
query_items |
Vrátí všechny výsledky odpovídající danému dotazu. Pro název kontejneru v klauzuli FROM můžete použít libovolnou hodnotu, ale často se používá název kontejneru. V následujících příkladech je název kontejneru "products" a má alias "p" pro snadnější odkazování v klauzuli WHERE. token pokračování odpovědi v odpovědi na dotaz. Platné hodnoty jsou kladná celá čísla. Hodnota 0 je stejná jako nepředávky hodnoty (výchozí bez limitu). :keyword int max_integrated_cache_staleness_in_ms: Maximální neakutnost mezipaměti pro integrovanou mezipaměť v Milisekund. U účtů nakonfigurovaných tak, aby používaly integrovanou mezipaměť, pomocí konzistence relace nebo konečné konzistence, je zaručeno, že odpovědi nebudou zastaralá než tato hodnota. |
query_items_change_feed |
Získejte seřazený seznam položek, které byly změněny, v pořadí, v jakém byly změněny. |
read |
Přečtěte si vlastnosti kontejneru. |
read_all_items |
Zobrazí seznam všech položek v kontejneru. |
read_item |
Získejte položku identifikovanou podle položky. |
read_offer |
Získejte objekt ThroughputProperties pro tento kontejner. Pokud pro kontejner ještě neexistují žádné vlastnosti propustnosti, vyvolá se výjimka. :keyword Callable response_hook: Volatelné volání s metadaty odpovědi. :returns: Propustnost pro kontejner. :raises ~azure.cosmos.exceptions.CosmosHttpResponseError: Pro kontejner neexistují žádné vlastnosti propustnosti nebo vlastnosti propustnosti nelze načíst. |
replace_item |
Nahradí zadanou položku, pokud existuje v kontejneru. Pokud položka v kontejneru ještě neexistuje, vyvolá se výjimka. |
replace_throughput |
Nahraďte propustnost kontejneru. Pokud pro kontejner ještě neexistují žádné vlastnosti propustnosti, vyvolá se výjimka. |
upsert_item |
Vložte nebo aktualizujte zadanou položku. Pokud položka již v kontejneru existuje, nahradí se. Pokud položka ještě neexistuje, vloží se. |
create_item
Vytvořte položku v kontejneru.
Pokud chcete aktualizovat nebo nahradit existující položku, použijte metodu upsert_item .
create_item(body: Dict[str, Any], populate_query_metrics: bool | None = None, pre_trigger_include: str | None = None, post_trigger_include: str | None = None, indexing_directive: Any | None = None, **kwargs: Any) -> Dict[str, Any]
Parametry
- body
Objekt podobný diktování představující položku, kterou chcete vytvořit.
- pre_trigger_include
ID triggeru, které se použije jako aktivační událost před operací.
- post_trigger_include
ID triggeru, které se použije jako aktivační událost po operaci.
- indexing_directive
Určete, zda má být dokument vynechán z indexování.
- enable_automatic_id_generation
- bool
Povolte automatické generování ID, pokud žádné ID neexistuje.
- session_token
- str
Token pro použití s konzistencí relace.
- etag
- str
Hodnota ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k akci podle podmínky určené parametrem match_condition .
- match_condition
- MatchConditions
Podmínka shody, která se použije u značky etag.
- response_hook
- Callable
Volatelný vyvolán s metadaty odpovědi.
Návraty
Dikt představující novou položku
Návratový typ
Výjimky
Položka s daným ID již existuje.
delete_all_items_by_partition_key
Funkce odstranění podle klíče oddílu je asynchronní operace na pozadí, která umožňuje odstranit všechny dokumenty se stejnou hodnotou klíče logického oddílu pomocí sady Cosmos SDK. Operace odstranění podle klíče oddílu je omezená tak, aby spotřebovala maximálně 10 % celkového dostupného počtu RU/s kontejneru za sekundu. To pomáhá omezit prostředky používané touto úlohou na pozadí.
delete_all_items_by_partition_key(partition_key: str | int | float | bool, **kwargs: Any) -> None
Parametry
- pre_trigger_include
- str
ID triggeru, které se použije jako aktivační událost před operací.
- post_trigger_include
- str
ID triggeru, které se použije jako aktivační událost po operaci.
- session_token
- str
Token pro použití s konzistencí relace.
- etag
- str
Hodnota ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k akci podle podmínky určené parametrem match_condition .
- match_condition
- MatchConditions
Podmínka shody, která se použije u značky etag.
- response_hook
- Callable
Volatelný vyvolán s metadaty odpovědi.
Návratový typ
Výjimky
Položka s daným ID již existuje.
delete_conflict
Odstraňte zadaný konflikt z kontejneru.
Pokud konflikt v kontejneru ještě neexistuje, je vyvolána výjimka.
delete_conflict(conflict: str | Dict[str, Any], partition_key: Any, **kwargs: Any) -> None
Parametry
- conflict
ID (název) nebo dikt představující konflikt, který se má odstranit.
- partition_key
Klíč oddílu pro konflikt, který se má odstranit.
- response_hook
- Callable
Volatelný vyvolán s metadaty odpovědi.
Návratový typ
Výjimky
Konflikt se úspěšně neodstranil.
Konflikt v kontejneru neexistuje.
delete_item
Odstraňte zadanou položku z kontejneru.
Pokud položka v kontejneru ještě neexistuje, vyvolá se výjimka.
delete_item(item: Dict[str, Any] | str, partition_key: Any, populate_query_metrics: bool | None = None, pre_trigger_include: str | None = None, post_trigger_include: str | None = None, **kwargs: Any) -> None
Parametry
- item
ID (název) nebo diktování představující položku, která má být odstraněna.
- partition_key
Určuje hodnotu klíče oddílu pro položku.
- pre_trigger_include
ID triggeru, které se použije jako aktivační událost před operací.
- post_trigger_include
ID triggeru, které se použije jako aktivační událost po operaci.
- session_token
- str
Token pro použití s konzistencí relace.
- etag
- str
Hodnota ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k akci podle podmínky určené parametrem match_condition .
- match_condition
- MatchConditions
Podmínka shody, která se použije u značky etag.
- response_hook
- Callable
Volatelný vyvolán s metadaty odpovědi.
Návratový typ
Výjimky
Položka se úspěšně neodstranila.
Položka v kontejneru neexistuje.
get_conflict
Získejte konflikt identifikovaný konfliktem.
get_conflict(conflict: str | Dict[str, Any], partition_key: Any, **kwargs: Any) -> Dict[str, Any]
Parametry
- conflict
ID (název) nebo diktování představující konflikt, který se má načíst.
- partition_key
Klíč oddílu pro načtení konfliktu.
- response_hook
- Callable
Volatelný vyvolán s metadaty odpovědi.
Návraty
diktování představující načtený konflikt.
Návratový typ
Výjimky
Daný konflikt se nepodařilo načíst.
get_throughput
Získejte objekt ThroughputProperties pro tento kontejner.
Pokud pro kontejner ještě neexistují žádné vlastnosti propustnosti, dojde k výjimce. :keyword Volatable response_hook: Lze volat s metadaty odpovědi. :returns: Propustnost kontejneru. :raises ~azure.cosmos.exceptions.CosmosHttpResponseError: Pro kontejner neexistují žádné vlastnosti propustnosti nebo
Vlastnosti propustnosti nelze načíst.
get_throughput(**kwargs: Any) -> ThroughputProperties
Návratový typ
Výjimky
Položka s daným ID již existuje.
list_conflicts
Vypište všechny konflikty v kontejneru.
list_conflicts(max_item_count: int | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parametry
- max_item_count
Maximální počet položek, které mají být vráceny v operaci výčtu.
- response_hook
- Callable
Volatelný vyvolán s metadaty odpovědi.
Návraty
Iterable of conflicts (dicts).
Návratový typ
Výjimky
Položka s daným ID již existuje.
patch_item
Prozatímní metoda Opraví zadanou položku pomocí zadaných operací, pokud v kontejneru existuje.
Pokud položka v kontejneru ještě neexistuje, vyvolá se výjimka.
patch_item(item: str | Dict[str, Any], partition_key: str | int | float | bool, patch_operations: List[Dict[str, Any]], **kwargs: Any) -> Dict[str, Any]
Parametry
ID (název) nebo dict představující položku, která má být opravena.
Seznam operací oprav, které se mají použít u položky.
- filter_predicate
- str
podmíněný filtr, který se použije na operace oprav.
- pre_trigger_include
- str
ID triggeru, které se použije jako aktivační událost před operací.
- post_trigger_include
- str
ID triggeru, které se použije jako aktivační událost po operaci.
- session_token
- str
Token pro použití s konzistencí relace.
- etag
- str
Hodnota ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k akci podle podmínky určené parametrem match_condition .
- match_condition
- MatchConditions
Podmínka shody, která se použije u značky etag.
- response_hook
- Callable
Volatelný vyvolán s metadaty odpovědi.
Návraty
Dikt představující položku po provedení operací opravy.
Návratový typ
Výjimky
Operace oprav selhaly nebo položka se zadaným ID neexistuje.
query_conflicts
Vrátí všechny konflikty odpovídající danému dotazu.
query_conflicts(query: str, parameters: List[str] | None = None, enable_cross_partition_query: bool | None = None, partition_key: Any | None = None, max_item_count: int | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parametry
- query
Dotaz SQL služby Azure Cosmos DB, který se má spustit.
- parameters
Volitelné pole parametrů dotazu Pokud se nezadá žádný dotaz, ignoruje se.
- enable_cross_partition_query
Umožňuje odeslat více než jeden požadavek na provedení dotazu ve službě Azure Cosmos DB. Pokud dotaz není vymezený na hodnotu klíče s jedním oddílem, je potřeba více než jeden požadavek.
- partition_key
Určuje hodnotu klíče oddílu pro položku.
- max_item_count
Maximální počet položek, které mají být vráceny v operaci výčtu.
- response_hook
- Callable
Volatelný vyvolán s metadaty odpovědi.
Návraty
Iterable of conflicts (dicts).
Návratový typ
Výjimky
Položka s daným ID již existuje.
query_items
Vrátí všechny výsledky odpovídající danému dotazu.
Pro název kontejneru v klauzuli FROM můžete použít libovolnou hodnotu, ale často se používá název kontejneru. V následujících příkladech je název kontejneru "products" a má alias "p" pro snadnější odkazování v klauzuli WHERE.
token pokračování odpovědi v odpovědi na dotaz. Platné hodnoty jsou kladná celá čísla. Hodnota 0 je stejná jako nepředávky hodnoty (výchozí bez limitu). :keyword int max_integrated_cache_staleness_in_ms: Maximální neakutnost mezipaměti pro integrovanou mezipaměť v
Milisekund. U účtů nakonfigurovaných tak, aby používaly integrovanou mezipaměť, pomocí konzistence relace nebo konečné konzistence, je zaručeno, že odpovědi nebudou zastaralá než tato hodnota.
query_items(query: str, parameters: List[Dict[str, object]] | None = None, partition_key: Any | None = None, enable_cross_partition_query: bool | None = None, max_item_count: int | None = None, enable_scan_in_query: bool | None = None, populate_query_metrics: bool | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Návraty
Iterable of items (dicts).
Návratový typ
Výjimky
Položka s daným ID již existuje.
Příklady
Získejte všechny produkty, které nebyly ukončeny:
import json
for item in container.query_items(
query='SELECT * FROM products p WHERE p.productModel <> "DISCONTINUED"',
enable_cross_partition_query=True,
):
print(json.dumps(item, indent=True))
Parametrizovaný dotaz pro získání všech produktů, které byly ukončeny:
discontinued_items = container.query_items(
query='SELECT * FROM products p WHERE p.productModel = @model AND p.productName="Widget"',
parameters=[dict(name="@model", value="DISCONTINUED")],
)
for item in discontinued_items:
print(json.dumps(item, indent=True))
query_items_change_feed
Získejte seřazený seznam položek, které byly změněny, v pořadí, v jakém byly změněny.
query_items_change_feed(partition_key_range_id: str | None = None, is_start_from_beginning: bool = False, continuation: str | None = None, max_item_count: int | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parametry
- partition_key_range_id
Požadavky ChangeFeed je možné spouštět pro konkrétní rozsahy klíčů oddílů. Používá se k paralelnímu zpracování kanálu změn mezi několika příjemci.
- partition_key
klíč oddílu, na který jsou cíleny požadavky ChangeFeed.
- is_start_from_beginning
Zjistit, jestli má kanál změn začínat od začátku (pravda) nebo od aktuálního (false). Ve výchozím nastavení se začíná od aktuálního (false).
- continuation
e_tag hodnotu, která se použije jako pokračování pro čtení kanálu změn.
- max_item_count
Maximální počet položek, které se mají vrátit v operaci výčtu.
- response_hook
- Callable
Volatelné vyvolání s metadaty odpovědi.
Návraty
Iterable of items (dicts).
Návratový typ
Výjimky
Položka s daným ID již existuje.
read
Přečtěte si vlastnosti kontejneru.
read(*, populate_partition_key_range_statistics: bool | None = None, populate_quota_info: bool | None = None, **kwargs)
Parametry
- populate_partition_key_range_statistics
- bool
Povolte v hlavičce odpovědi statistiku rozsahu klíčů oddílu.
- populate_quota_info
- bool
Povolte vrácení informací o kvótě úložiště kolekce v hlavičce odpovědí.
- session_token
- str
Token pro použití s konzistencí relací.
- response_hook
- Callable
Volatelné vyvolání s metadaty odpovědi.
Návraty
Dict představující načtený kontejner.
Návratový typ
Výjimky
Vyvolána, pokud se kontejner nepodařilo načíst. To platí i v případě, že kontejner neexistuje.
read_all_items
Zobrazí seznam všech položek v kontejneru.
read_all_items(max_item_count: int | None = None, populate_query_metrics: bool | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parametry
- max_item_count
Maximální počet položek, které se mají vrátit v operaci výčtu.
- session_token
- str
Token pro použití s konzistencí relací.
- response_hook
- Callable
Volatelné vyvolání s metadaty odpovědi.
- max_integrated_cache_staleness_in_ms
- int
Maximální zastaralost mezipaměti pro integrovanou mezipaměť v milisekundách U účtů nakonfigurovaných tak, aby používaly integrovanou mezipaměť, pomocí konzistence relace nebo konečné konzistence, je zaručeno, že odpovědi nebudou zastaralá než tato hodnota.
Návraty
Iterable of items (dicts).
Návratový typ
Výjimky
Položka s daným ID již existuje.
read_item
Získejte položku identifikovanou podle položky.
read_item(item: str | Dict[str, Any], partition_key: Any, populate_query_metrics: bool | None = None, post_trigger_include: str | None = None, **kwargs: Any) -> Dict[str, Any]
Parametry
- item
ID (název) nebo diktát představující položku, která se má načíst.
- partition_key
Klíč oddílu pro položku, která se má načíst.
- post_trigger_include
ID triggeru, které se má použít jako aktivační událost po operaci.
- session_token
- str
Token pro použití s konzistencí relací.
- response_hook
- Callable
Volatelné vyvolání s metadaty odpovědi.
- max_integrated_cache_staleness_in_ms
- int
Maximální zastaralost mezipaměti pro integrovanou mezipaměť v milisekundách U účtů nakonfigurovaných tak, aby používaly integrovanou mezipaměť, pomocí konzistence relace nebo konečné konzistence, je zaručeno, že odpovědi nebudou zastaralá než tato hodnota.
Návraty
Dikt představující položku, která se má načíst.
Návratový typ
Výjimky
Danou položku nelze načíst.
Příklady
Získejte položku z databáze a aktualizujte jednu z jejích vlastností:
item = container.read_item("item2", partition_key="Widget")
item["productModel"] = "DISCONTINUED"
updated_item = container.upsert_item(item)
read_offer
Získejte objekt ThroughputProperties pro tento kontejner. Pokud pro kontejner ještě neexistují žádné vlastnosti propustnosti, vyvolá se výjimka. :keyword Callable response_hook: Volatelné volání s metadaty odpovědi. :returns: Propustnost pro kontejner. :raises ~azure.cosmos.exceptions.CosmosHttpResponseError: Pro kontejner neexistují žádné vlastnosti propustnosti nebo
vlastnosti propustnosti nelze načíst.
read_offer(**kwargs: Any) -> Offer
Návratový typ
Výjimky
Položka s daným ID již existuje.
replace_item
Nahradí zadanou položku, pokud existuje v kontejneru.
Pokud položka v kontejneru ještě neexistuje, vyvolá se výjimka.
replace_item(item: str | Dict[str, Any], body: Dict[str, Any], populate_query_metrics: bool | None = None, pre_trigger_include: str | None = None, post_trigger_include: str | None = None, **kwargs: Any) -> Dict[str, Any]
Parametry
- item
ID (název) nebo diktát představující položku, která má být nahrazena.
- body
Objekt podobný diktování představující položku, která se má nahradit.
- pre_trigger_include
ID triggeru, které se použije jako aktivační událost před operací.
- post_trigger_include
ID triggeru, které se má použít jako aktivační událost po operaci.
- session_token
- str
Token pro použití s konzistencí relací.
- etag
- str
Hodnota značky ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k chování podle podmínky zadané parametrem match_condition .
- match_condition
- MatchConditions
Podmínka shody, která se má použít u značky etag.
- response_hook
- Callable
Volatelné vyvolání s metadaty odpovědi.
Návraty
Prošel dikt představující položku po nahrazení.
Návratový typ
Výjimky
Nahrazení selhalo nebo položka s daným ID neexistuje.
replace_throughput
Nahraďte propustnost kontejneru.
Pokud pro kontejner ještě neexistují žádné vlastnosti propustnosti, vyvolá se výjimka.
replace_throughput(throughput: int | ThroughputProperties | None, **kwargs: Any) -> ThroughputProperties
Parametry
- throughput
Propustnost, která se má nastavit (celé číslo).
- response_hook
- Callable
Volatelné vyvolání s metadaty odpovědi.
Návraty
PropustnostProperties pro kontejner, aktualizované o novou propustnost.
Návratový typ
Výjimky
Pro kontejner neexistují žádné vlastnosti propustnosti nebo se vlastnosti propustnosti nedají aktualizovat.
upsert_item
Vložte nebo aktualizujte zadanou položku.
Pokud položka již v kontejneru existuje, nahradí se. Pokud položka ještě neexistuje, vloží se.
upsert_item(body: Dict[str, Any], populate_query_metrics: bool | None = None, pre_trigger_include: str | None = None, post_trigger_include: str | None = None, **kwargs: Any) -> Dict[str, Any]
Parametry
- body
Objekt podobný diktování představující položku, kterou chcete aktualizovat nebo vložit.
- pre_trigger_include
ID triggeru, které se použije jako aktivační událost před operací.
- post_trigger_include
ID triggeru, které se má použít jako aktivační událost po operaci.
- session_token
- str
Token pro použití s konzistencí relací.
- etag
- str
Hodnota značky ETag nebo zástupný znak (*). Slouží ke kontrole, jestli se prostředek změnil, a k chování podle podmínky zadané parametrem match_condition .
- match_condition
- MatchConditions
Podmínka shody, která se má použít u značky etag.
- response_hook
- Callable
Volatelné vyvolání s metadaty odpovědi.
Návraty
Dikt představující položku upserted.
Návratový typ
Výjimky
Danou položku nelze vložit do upsertu.
Atributy
is_system_key
scripts
Azure SDK for Python