ContainerProxy Klasa
Interfejs umożliwiający interakcję z określonym kontenerem bazy danych.
Nie należy bezpośrednio utworzyć wystąpienia tej klasy. Zamiast tego użyj get_container_client metody , aby pobrać istniejący kontener lub create_container metodę w celu utworzenia nowego kontenera.
Kontener w bazie danych interfejsu API SQL usługi Azure Cosmos DB to kolekcja dokumentów, z których każda jest reprezentowana jako element.
- Dziedziczenie
-
builtins.objectContainerProxy
Konstruktor
ContainerProxy(client_connection: CosmosClientConnection, database_link: str, id: str, properties: Dict[str, Any] = None)
Parametry
- client_connection
- database_link
- id
- properties
Zmienne
- id
- str
Identyfikator (nazwa) kontenera
- session_token
- str
Token sesji dla kontenera.
Metody
create_item |
Utwórz element w kontenerze. Aby zaktualizować lub zastąpić istniejący element, użyj upsert_item metody . |
delete_all_items_by_partition_key |
Funkcja usuwania według klucza partycji jest asynchroniczną operacją w tle, która umożliwia usunięcie wszystkich dokumentów z tą samą wartością klucza partycji logicznej przy użyciu zestawu Cosmos SDK. Operacja usuwania według klucza partycji jest ograniczona do korzystania z co najwyżej 10% całkowitej dostępnej liczby jednostek RU/s w kontenerze na sekundę. Pomaga to ograniczyć zasoby używane przez to zadanie w tle. |
delete_conflict |
Usuń określony konflikt z kontenera. Jeśli konflikt jeszcze nie istnieje w kontenerze, zostanie zgłoszony wyjątek. |
delete_item |
Usuń określony element z kontenera. Jeśli element jeszcze nie istnieje w kontenerze, zostanie zgłoszony wyjątek. |
get_conflict |
Pobierz konflikt zidentyfikowany przez konflikt. |
get_throughput |
Pobierz obiekt ThroughputProperties dla tego kontenera. Jeśli dla kontenera nie istnieją już właściwości przepływności, zgłaszany jest wyjątek. :keyword Callable response_hook: Wywoływanie wywoływane z metadanymi odpowiedzi. :returns: Przepływność dla kontenera. :zgłasza błąd ~azure.cosmos.exceptions.CosmosHttpResponseError: nie ma właściwości przepływności dla kontenera lub nie można pobrać właściwości przepływności. |
list_conflicts |
Wyświetl listę wszystkich konfliktów w kontenerze. |
patch_item |
Metoda tymczasowa Poprawia określony element za pomocą podanych operacji, jeśli istnieje w kontenerze. Jeśli element jeszcze nie istnieje w kontenerze, zostanie zgłoszony wyjątek. |
query_conflicts |
Zwróć wszystkie konflikty pasujące do danego zapytania. |
query_items |
Zwróć wszystkie wyniki pasujące do danego zapytania. Możesz użyć dowolnej wartości nazwy kontenera w klauzuli FROM, ale często jest używana nazwa kontenera. W poniższych przykładach nazwa kontenera to "products" i ma alias "p", aby ułatwić odwoływanie się do klauzuli WHERE. token kontynuacji odpowiedzi w odpowiedzi na zapytanie. Prawidłowe wartości to dodatnie liczby całkowite. Wartość 0 jest taka sama jak wartość, która nie przekazuje wartości (wartość domyślna nie jest limitem). :słowo kluczowe int max_integrated_cache_staleness_in_ms: maksymalna nieaktualność pamięci podręcznej zintegrowanej pamięci podręcznej w programie Milisekund. W przypadku kont skonfigurowanych do korzystania ze zintegrowanej pamięci podręcznej przy użyciu spójności sesji lub ostatecznej odpowiedzi nie są nieaktualne niż ta wartość. |
query_items_change_feed |
Pobierz posortowaną listę elementów, które zostały zmienione, w kolejności, w jakiej zostały zmodyfikowane. |
read |
Odczytywanie właściwości kontenera. |
read_all_items |
Wyświetl listę wszystkich elementów w kontenerze. |
read_item |
Pobierz element zidentyfikowany przez element. |
read_offer |
Pobierz obiekt ThroughputProperties dla tego kontenera. Jeśli dla kontenera nie istnieją już właściwości przepływności, zgłaszany jest wyjątek. :keyword Callable response_hook: Wywoływanie wywoływane z metadanymi odpowiedzi. :returns: Przepływność dla kontenera. :zgłasza błąd ~azure.cosmos.exceptions.CosmosHttpResponseError: nie ma właściwości przepływności dla kontenera lub nie można pobrać właściwości przepływności. |
replace_item |
Zastępuje określony element, jeśli istnieje w kontenerze. Jeśli element jeszcze nie istnieje w kontenerze, zostanie zgłoszony wyjątek. |
replace_throughput |
Zastąp przepływność kontenera. Jeśli dla kontenera nie istnieją już właściwości przepływności, zgłaszany jest wyjątek. |
upsert_item |
Wstaw lub zaktualizuj określony element. Jeśli element już istnieje w kontenerze, zostanie on zastąpiony. Jeśli element jeszcze nie istnieje, zostanie wstawiony. |
create_item
Utwórz element w kontenerze.
Aby zaktualizować lub zastąpić istniejący element, użyj upsert_item metody .
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
Obiekt przypominający dykt reprezentujący element do utworzenia.
- pre_trigger_include
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji wstępnej.
- post_trigger_include
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji po operacji.
- indexing_directive
Określ, czy dokument powinien zostać pominięty z indeksowania.
- enable_automatic_id_generation
- bool
Włącz automatyczne generowanie identyfikatorów, jeśli nie ma identyfikatora.
- session_token
- str
Token do użycia ze spójnością sesji.
- etag
- str
Wartość elementu ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Zwraca
Dykt reprezentujący nowy element.
Typ zwracany
Wyjątki
Element o danym identyfikatorze już istnieje.
delete_all_items_by_partition_key
Funkcja usuwania według klucza partycji jest asynchroniczną operacją w tle, która umożliwia usunięcie wszystkich dokumentów z tą samą wartością klucza partycji logicznej przy użyciu zestawu Cosmos SDK. Operacja usuwania według klucza partycji jest ograniczona do korzystania z co najwyżej 10% całkowitej dostępnej liczby jednostek RU/s w kontenerze na sekundę. Pomaga to ograniczyć zasoby używane przez to zadanie w tle.
delete_all_items_by_partition_key(partition_key: str | int | float | bool, **kwargs: Any) -> None
Parametry
- pre_trigger_include
- str
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji wstępnej.
- post_trigger_include
- str
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji po operacji.
- session_token
- str
Token do użycia ze spójnością sesji.
- etag
- str
Wartość elementu ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Typ zwracany
Wyjątki
Element o danym identyfikatorze już istnieje.
delete_conflict
Usuń określony konflikt z kontenera.
Jeśli konflikt jeszcze nie istnieje w kontenerze, zostanie zgłoszony wyjątek.
delete_conflict(conflict: str | Dict[str, Any], partition_key: Any, **kwargs: Any) -> None
Parametry
- conflict
Identyfikator (nazwa) lub dykt reprezentujący konflikt, który ma zostać usunięty.
- partition_key
Klucz partycji powodujący konflikt do usunięcia.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Typ zwracany
Wyjątki
Konflikt nie został pomyślnie usunięty.
Konflikt nie istnieje w kontenerze.
delete_item
Usuń określony element z kontenera.
Jeśli element jeszcze nie istnieje w kontenerze, zostanie zgłoszony wyjątek.
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
Identyfikator (nazwa) lub dykt reprezentujący element do usunięcia.
- partition_key
Określa wartość klucza partycji dla elementu.
- pre_trigger_include
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji wstępnej.
- post_trigger_include
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji po operacji.
- session_token
- str
Token do użycia ze spójnością sesji.
- etag
- str
Wartość elementu ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Typ zwracany
Wyjątki
Element nie został pomyślnie usunięty.
Element nie istnieje w kontenerze.
get_conflict
Pobierz konflikt zidentyfikowany przez konflikt.
get_conflict(conflict: str | Dict[str, Any], partition_key: Any, **kwargs: Any) -> Dict[str, Any]
Parametry
- conflict
Identyfikator (nazwa) lub dykt reprezentujący konflikt do pobrania.
- partition_key
Klucz partycji dla konfliktu do pobrania.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Zwraca
Dykt reprezentujący pobrany konflikt.
Typ zwracany
Wyjątki
Nie można pobrać danego konfliktu.
get_throughput
Pobierz obiekt ThroughputProperties dla tego kontenera.
Jeśli dla kontenera nie istnieją już właściwości przepływności, zgłaszany jest wyjątek. :keyword Callable response_hook: Wywoływanie wywoływane z metadanymi odpowiedzi. :returns: Przepływność dla kontenera. :zgłasza błąd ~azure.cosmos.exceptions.CosmosHttpResponseError: nie ma właściwości przepływności dla kontenera lub
nie można pobrać właściwości przepływności.
get_throughput(**kwargs: Any) -> ThroughputProperties
Typ zwracany
Wyjątki
Element o danym identyfikatorze już istnieje.
list_conflicts
Wyświetl listę wszystkich konfliktów w kontenerze.
list_conflicts(max_item_count: int | None = None, **kwargs: Any) -> Iterable[Dict[str, Any]]
Parametry
- max_item_count
Maksymalna liczba elementów do zwrócenia w operacji wyliczania.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Zwraca
Iterable konfliktów (dykt).
Typ zwracany
Wyjątki
Element o danym identyfikatorze już istnieje.
patch_item
Metoda tymczasowa Poprawia określony element za pomocą podanych operacji, jeśli istnieje w kontenerze.
Jeśli element jeszcze nie istnieje w kontenerze, zostanie zgłoszony wyjątek.
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
Identyfikator (nazwa) lub dykt reprezentujący element do stosowania poprawek.
- filter_predicate
- str
filtr warunkowy, który ma być stosowany do operacji patch.
- pre_trigger_include
- str
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji wstępnej.
- post_trigger_include
- str
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji po operacji.
- session_token
- str
Token do użycia ze spójnością sesji.
- etag
- str
Wartość elementu ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Zwraca
Po wykonaniu operacji poprawek wystąpił dykt reprezentujący element.
Typ zwracany
Wyjątki
Operacje poprawek nie powiodły się lub element o podanym identyfikatorze nie istnieje.
query_conflicts
Zwróć wszystkie konflikty pasujące do danego zapytania.
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
Zapytanie SQL usługi Azure Cosmos DB do wykonania.
- parameters
Opcjonalna tablica parametrów zapytania. Ignorowane, jeśli nie podano kwerendy.
- enable_cross_partition_query
Umożliwia wysyłanie więcej niż jednego żądania w celu wykonania zapytania w usłudze Azure Cosmos DB. Jeśli zapytanie nie ma zakresu od wartości pojedynczego klucza partycji, jest konieczne więcej niż jedno żądanie.
- partition_key
Określa wartość klucza partycji dla elementu.
- max_item_count
Maksymalna liczba elementów do zwrócenia w operacji wyliczania.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Zwraca
Iterable konfliktów (dykt).
Typ zwracany
Wyjątki
Element o danym identyfikatorze już istnieje.
query_items
Zwróć wszystkie wyniki pasujące do danego zapytania.
Możesz użyć dowolnej wartości nazwy kontenera w klauzuli FROM, ale często jest używana nazwa kontenera. W poniższych przykładach nazwa kontenera to "products" i ma alias "p", aby ułatwić odwoływanie się do klauzuli WHERE.
token kontynuacji odpowiedzi w odpowiedzi na zapytanie. Prawidłowe wartości to dodatnie liczby całkowite. Wartość 0 jest taka sama jak wartość, która nie przekazuje wartości (wartość domyślna nie jest limitem). :słowo kluczowe int max_integrated_cache_staleness_in_ms: maksymalna nieaktualność pamięci podręcznej zintegrowanej pamięci podręcznej w programie
Milisekund. W przypadku kont skonfigurowanych do korzystania ze zintegrowanej pamięci podręcznej przy użyciu spójności sesji lub ostatecznej odpowiedzi nie są nieaktualne niż ta wartość.
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]]
Zwraca
Iterable elementów (dykt).
Typ zwracany
Wyjątki
Element o danym identyfikatorze już istnieje.
Przykłady
Pobierz wszystkie produkty, które nie zostały wycofane:
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))
Zapytanie sparametryzowane w celu pobrania wszystkich produktów, które zostały wycofane:
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
Pobierz posortowaną listę elementów, które zostały zmienione, w kolejności, w jakiej zostały zmodyfikowane.
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
Żądania ChangeFeed można wykonywać względem określonych zakresów kluczy partycji. Służy to do równoległego przetwarzania zestawienia zmian u wielu odbiorców.
- partition_key
klucz partycji, w którym są kierowane żądania ChangeFeed.
- is_start_from_beginning
Sprawdź, czy zestawienie zmian powinno zaczynać się od początku (true) czy z bieżącego (false). Domyślnie jest to początek od bieżącego (false).
- continuation
e_tag wartość, która ma być używana jako kontynuacja odczytywania zestawienia zmian.
- max_item_count
Maksymalna liczba elementów do zwrócenia w operacji wyliczania.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Zwraca
Iterable elementów (dykt).
Typ zwracany
Wyjątki
Element o danym identyfikatorze już istnieje.
read
Odczytywanie właściwości kontenera.
read(*, populate_partition_key_range_statistics: bool | None = None, populate_quota_info: bool | None = None, **kwargs)
Parametry
- populate_partition_key_range_statistics
- bool
Włącz zwracanie statystyk zakresu kluczy partycji w nagłówkach odpowiedzi.
- populate_quota_info
- bool
Włącz zwracanie informacji o limitach przydziału magazynu kolekcji w nagłówkach odpowiedzi.
- session_token
- str
Token do użycia ze spójnością sesji.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Zwraca
Dict reprezentujący pobrany kontener.
Typ zwracany
Wyjątki
Podniesione, jeśli nie można pobrać kontenera. Dotyczy to również tego, czy kontener nie istnieje.
read_all_items
Wyświetl listę wszystkich elementów w kontenerze.
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
Maksymalna liczba elementów do zwrócenia w operacji wyliczania.
- session_token
- str
Token do użycia ze spójnością sesji.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
- max_integrated_cache_staleness_in_ms
- int
Maksymalna nieaktualność pamięci podręcznej dla zintegrowanej pamięci podręcznej w milisekundach. W przypadku kont skonfigurowanych do korzystania ze zintegrowanej pamięci podręcznej przy użyciu spójności sesji lub ostatecznej odpowiedzi nie są nieaktualne niż ta wartość.
Zwraca
Iterable elementów (dykt).
Typ zwracany
Wyjątki
Element o danym identyfikatorze już istnieje.
read_item
Pobierz element zidentyfikowany przez element.
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
Identyfikator (nazwa) lub dykt reprezentujący element do pobrania.
- partition_key
Klucz partycji dla elementu do pobrania.
- post_trigger_include
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji po operacji.
- session_token
- str
Token do użycia ze spójnością sesji.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
- max_integrated_cache_staleness_in_ms
- int
Maksymalna nieaktualność pamięci podręcznej dla zintegrowanej pamięci podręcznej w milisekundach. W przypadku kont skonfigurowanych do korzystania ze zintegrowanej pamięci podręcznej przy użyciu spójności sesji lub ostatecznej odpowiedzi nie są nieaktualne niż ta wartość.
Zwraca
Dict reprezentujący element do pobrania.
Typ zwracany
Wyjątki
Nie można pobrać danego elementu.
Przykłady
Pobierz element z bazy danych i zaktualizuj jedną z jej właściwości:
item = container.read_item("item2", partition_key="Widget")
item["productModel"] = "DISCONTINUED"
updated_item = container.upsert_item(item)
read_offer
Pobierz obiekt ThroughputProperties dla tego kontenera. Jeśli dla kontenera nie istnieją już właściwości przepływności, zgłaszany jest wyjątek. :keyword Callable response_hook: Wywoływanie wywoływane z metadanymi odpowiedzi. :returns: Przepływność dla kontenera. :zgłasza błąd ~azure.cosmos.exceptions.CosmosHttpResponseError: nie ma właściwości przepływności dla kontenera lub
nie można pobrać właściwości przepływności.
read_offer(**kwargs: Any) -> Offer
Typ zwracany
Wyjątki
Element o danym identyfikatorze już istnieje.
replace_item
Zastępuje określony element, jeśli istnieje w kontenerze.
Jeśli element jeszcze nie istnieje w kontenerze, zostanie zgłoszony wyjątek.
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
Identyfikator (nazwa) lub dykt reprezentujący element do zastąpienia.
- body
Obiekt przypominający dykt reprezentujący element do zastąpienia.
- pre_trigger_include
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji wstępnej.
- post_trigger_include
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji po operacji.
- session_token
- str
Token do użycia ze spójnością sesji.
- etag
- str
Wartość elementu ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Zwraca
Dykt reprezentujący element po zastąpieniu przeszedł.
Typ zwracany
Wyjątki
Zamiana nie powiodła się lub element o podanym identyfikatorze nie istnieje.
replace_throughput
Zastąp przepływność kontenera.
Jeśli dla kontenera nie istnieją już właściwości przepływności, zgłaszany jest wyjątek.
replace_throughput(throughput: int | ThroughputProperties | None, **kwargs: Any) -> ThroughputProperties
Parametry
- throughput
Przepływność do ustawienia (liczba całkowita).
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Zwraca
PrzepływnośćWłaściwości dla kontenera, zaktualizowane o nową przepływność.
Typ zwracany
Wyjątki
Nie ma właściwości przepływności dla kontenera lub nie można zaktualizować właściwości przepływności.
upsert_item
Wstaw lub zaktualizuj określony element.
Jeśli element już istnieje w kontenerze, zostanie on zastąpiony. Jeśli element jeszcze nie istnieje, zostanie wstawiony.
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
Obiekt przypominający dykt reprezentujący element do zaktualizowania lub wstawienia.
- pre_trigger_include
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji wstępnej.
- post_trigger_include
identyfikator wyzwalacza, który ma być używany jako wyzwalacz operacji po operacji.
- session_token
- str
Token do użycia ze spójnością sesji.
- etag
- str
Wartość elementu ETag lub symbol wieloznaczny (*). Służy do sprawdzania, czy zasób uległ zmianie i działa zgodnie z warunkiem określonym przez parametr match_condition .
- match_condition
- MatchConditions
Warunek dopasowania do użycia na etagu.
- response_hook
- Callable
Wywoływany element z metadanymi odpowiedzi.
Zwraca
Dykt reprezentujący element upserted.
Typ zwracany
Wyjątki
Nie można upserted danego elementu.
Atrybuty
is_system_key
scripts
Azure SDK for Python