ContainerProxy Klass

Ett gränssnitt för att interagera med en specifik DB-container.

Den här klassen ska inte instansieras direkt. Använd <xref:azure.cosmos.aio.database.DatabaseProxy.get_container_client> i stället metoden för att hämta en befintlig container eller <xref:azure.cosmos.aio.database.DatabaseProxy.create_container> metoden för att skapa en ny container.

En container i en Azure Cosmos DB SQL API-databas är en samling dokument som var och en representeras som ett objekt.

Arv
builtins.object
ContainerProxy

Konstruktor

ContainerProxy(client_connection: CosmosClientConnection, database_link: str, id: str, properties: Dict[str, Any] = None)

Parametrar

client_connection
database_link
id
properties
standardvärde: None

Variabler

id
str

ID (namn) för containern

session_token
str

Sessionstoken för containern.

Metoder

create_item

Skapa ett objekt i containern.

Om du vill uppdatera eller ersätta ett befintligt objekt använder du upsert_item metoden .

delete_all_items_by_partition_key

Funktionen ta bort med partitionsnyckel är en asynkron bakgrundsåtgärd som gör att du kan ta bort alla dokument med samma logiska partitionsnyckelvärde med hjälp av Cosmos SDK. Åtgärden ta bort av partitionsnyckeln är begränsad till högst 10 % av det totala antalet tillgängliga RU/s i containern varje sekund. Detta hjälper till att begränsa de resurser som används av den här bakgrundsaktiviteten.

delete_conflict

Ta bort en angiven konflikt från containern.

Om konflikten inte redan finns i containern utlöses ett undantag.

delete_item

Ta bort det angivna objektet från containern.

Om objektet inte redan finns i containern utlöses ett undantag.

get_conflict

Hämta konflikten som identifieras av en konflikt.

get_throughput

Hämta objektet ThroughputProperties för den här containern.

Om det inte redan finns några DataflödeEgenskaper för containern utlöses ett undantag.

list_conflicts

Visa en lista över alla konflikter i containern.

patch_item

Provisorisk metod Korrigerar det angivna objektet med de angivna åtgärderna om det finns i containern.

Om objektet inte redan finns i containern utlöses ett undantag.

query_conflicts

Returnera alla konflikter som matchar en viss fråga.

query_items

Returnera alla resultat som matchar den angivna frågan.

Du kan använda valfritt värde för containernamnet i FROM-satsen, men ofta används containernamnet. I exemplen nedan är containernamnet "products" och aliaset "p" för enklare hänvisning i WHERE-satsen.

svarsfortsättningstoken i frågesvaret. Giltiga värden är positiva heltal. Värdet 0 är detsamma som att inte skicka ett värde (ingen standardgräns). :keyword int max_integrated_cache_staleness_in_ms: Den maximala cache-inaktuellheten för den integrerade cachen i

Millisekunder. För konton som har konfigurerats för att använda den integrerade cachen, med hjälp av sessions- eller slutlig konsekvens, är svaren garanterat inte inaktuella än det här värdet.

query_items_change_feed

Hämta en sorterad lista över objekt som har ändrats i den ordning som de ändrades.

read

Läs containeregenskaperna.

read_all_items

Visa en lista över alla objekt i containern.

read_item

Hämta objektet som identifieras av objektet.

replace_item

Ersätter det angivna objektet om det finns i containern.

Om objektet inte redan finns i containern utlöses ett undantag.

replace_throughput

Ersätt containerns dataflöde.

Om det inte redan finns några DataflödeEgenskaper för containern utlöses ett undantag.

upsert_item

Infoga eller uppdatera det angivna objektet.

Om objektet redan finns i containern ersätts det. Om objektet inte redan finns infogas det.

create_item

Skapa ett objekt i containern.

Om du vill uppdatera eller ersätta ett befintligt objekt använder du upsert_item metoden .

async create_item(body: Dict[str, Any], **kwargs: Any) -> Dict[str, Any]

Parametrar

body
dict[str, str]
Obligatorisk

Ett diktaliknande objekt som representerar objektet som ska skapas.

pre_trigger_include
str

utlösar-ID som ska användas som föråtgärdsutlösare.

post_trigger_include
str

utlösar-ID som ska användas som utlösare efter åtgärden.

indexing_directive
Union[int, IndexingDirective]

Räknar upp möjliga värden för att ange om dokumentet ska utelämnas från indexeringen. Möjliga värden är: 0 för Standard, 1 för Exkludera eller 2 för Inkludera.

enable_automatic_id_generation
bool

Aktivera automatisk ID-generering om inget ID finns.

session_token
str

Token för användning med sessionskonsekvens.

initial_headers
dict[str, str]

Inledande rubriker som ska skickas som en del av begäran.

etag
str

Ett ETag-värde eller jokertecknet (*). Används för att kontrollera om resursen har ändrats och agera enligt villkoret som anges av parametern match_condition .

match_condition
MatchConditions

Matchningsvillkoret som ska användas på etag.

response_hook
Callable[[Dict[str, str], Dict[str, Any]], None]

En anropsbar anropad med svarsmetadata.

Returer

En diktamen som representerar det nya objektet.

Returtyp

Undantag

Objektet med det angivna ID:t finns redan.

delete_all_items_by_partition_key

Funktionen ta bort med partitionsnyckel är en asynkron bakgrundsåtgärd som gör att du kan ta bort alla dokument med samma logiska partitionsnyckelvärde med hjälp av Cosmos SDK. Åtgärden ta bort av partitionsnyckeln är begränsad till högst 10 % av det totala antalet tillgängliga RU/s i containern varje sekund. Detta hjälper till att begränsa de resurser som används av den här bakgrundsaktiviteten.

async delete_all_items_by_partition_key(partition_key: str | int | float | bool, **kwargs: Any) -> None

Parametrar

partition_key
Any
Obligatorisk

Partitionsnyckel för de objekt som ska tas bort.

pre_trigger_include
str

utlösar-ID som ska användas som föråtgärdsutlösare.

post_trigger_include
str

utlösar-ID som ska användas som utlösare efter åtgärden.

session_token
str

Token för användning med sessionskonsekvens.

etag
str

Ett ETag-värde eller jokertecknet (*). Används för att kontrollera om resursen har ändrats och agera enligt villkoret som anges av parametern match_condition .

match_condition
MatchConditions

Matchningsvillkoret som ska användas på etag.

response_hook
Callable

En anropsbar anropad med svarsmetadata.

Returtyp

Undantag

Objektet med det angivna ID:t finns redan.

delete_conflict

Ta bort en angiven konflikt från containern.

Om konflikten inte redan finns i containern utlöses ett undantag.

async delete_conflict(conflict: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> None

Parametrar

conflict
Union[str, Dict[str, Any]]
Obligatorisk

Det ID (namn) eller diktat som representerar konflikten som ska hämtas.

partition_key
Union[str, int, float, bool]
Obligatorisk

Partitionsnyckel för konflikten som ska hämtas.

response_hook
Callable[[Dict[str, str], None], None]

En anropsbar anropad med svarsmetadata.

Returtyp

Undantag

Konflikten har inte tagits bort.

Konflikten finns inte i containern.

delete_item

Ta bort det angivna objektet från containern.

Om objektet inte redan finns i containern utlöses ett undantag.

async delete_item(item: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> None

Parametrar

item
Union[str, Dict[str, Any]]
Obligatorisk

Det ID (namn) eller diktat som representerar objektet som ska tas bort.

partition_key
Union[str, int, float, bool]
Obligatorisk

Anger partitionsnyckelvärdet för objektet.

pre_trigger_include
str

utlösar-ID som ska användas som föråtgärdsutlösare.

post_trigger_include
str

utlösar-ID som ska användas som utlösare efter åtgärden.

session_token
str

Token för användning med sessionskonsekvens.

initial_headers
dict[str, str]

Inledande rubriker som ska skickas som en del av begäran.

etag
str

Ett ETag-värde eller jokertecknet (*). Används för att kontrollera om resursen har ändrats och agera enligt villkoret som anges av parametern match_condition .

match_condition
MatchConditions

Matchningsvillkoret som ska användas på etag.

response_hook
Callable[[Dict[str, str], None], None]

En anropsbar anropad med svarsmetadata.

Returtyp

Undantag

Objektet har inte tagits bort.

Objektet finns inte i containern.

get_conflict

Hämta konflikten som identifieras av en konflikt.

async get_conflict(conflict: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> Dict[str, Any]

Parametrar

conflict
Union[str, Dict[str, Any]]
Obligatorisk

Det ID (namn) eller diktat som representerar konflikten som ska hämtas.

partition_key
Union[str, int, float, bool]
Obligatorisk

Partitionsnyckel för konflikten som ska hämtas.

response_hook
Callable[[Dict[str, str], Dict[str, Any]], None]

En anropsbar anropad med svarsmetadata.

Returer

En diktamen som representerar den hämtade konflikten.

Returtyp

Undantag

Det gick inte att hämta den angivna konflikten.

get_throughput

Hämta objektet ThroughputProperties för den här containern.

Om det inte redan finns några DataflödeEgenskaper för containern utlöses ett undantag.

async get_throughput(**kwargs: Any) -> ThroughputProperties

Parametrar

response_hook
Callable[[Dict[str, str], List[Dict[str, Any]]], None]

En anropsbar anropad med svarsmetadata.

Returer

DataflödeEgenskaper för containern.

Returtyp

Undantag

Det finns inga dataflödesegenskaper för containern eller så gick det inte att hämta dataflödesegenskaperna.

list_conflicts

Visa en lista över alla konflikter i containern.

list_conflicts(**kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]

Parametrar

max_item_count
int

Maximalt antal objekt som ska returneras i uppräkningsåtgärden.

response_hook
Callable[[Dict[str, str], <xref:AsyncItemPaged>[Dict[str, Any]]], None]

En anropsbar anropad med svarsmetadata.

Returer

En AsyncItemPaged med konflikter (dikteringar).

Returtyp

<xref:AsyncItemPaged>[Dict[str, Any]]

Undantag

Objektet med det angivna ID:t finns redan.

patch_item

Provisorisk metod Korrigerar det angivna objektet med de angivna åtgärderna om det finns i containern.

Om objektet inte redan finns i containern utlöses ett undantag.

async patch_item(item: str | Dict[str, Any], partition_key: str | int | float | bool, patch_operations: List[Dict[str, Any]], **kwargs: Any) -> Dict[str, Any]

Parametrar

item
Union[str, Dict[str, Any]]
Obligatorisk

Det ID (namn) eller diktat som representerar objektet som ska korrigeras.

partition_key
Union[str, int, float, bool]
Obligatorisk

Partitionsnyckeln för objektet som ska korrigeras.

patch_operations
List[Dict[str, Any]]
Obligatorisk

Listan över korrigeringsåtgärder som ska tillämpas på objektet.

filter_predicate
str

villkorsstyrt filter som ska tillämpas på korrigeringsåtgärder.

pre_trigger_include
str

utlösar-ID som ska användas som föråtgärdsutlösare.

post_trigger_include
str

utlösar-ID som ska användas som utlösare efter åtgärden.

session_token
str

Token för användning med sessionskonsekvens.

etag
str

Ett ETag-värde eller jokertecknet (*). Används för att kontrollera om resursen har ändrats och agera enligt villkoret som anges av parametern match_condition .

match_condition
MatchConditions

Matchningsvillkoret som ska användas på etag.

response_hook
Callable

En anropsbar anropad med svarsmetadata.

Returer

En diktamen som representerar objektet efter att korrigeringsåtgärderna gick igenom.

Returtyp

Undantag

Korrigeringsåtgärderna misslyckades eller så finns inte objektet med angivet ID.

query_conflicts

Returnera alla konflikter som matchar en viss fråga.

query_conflicts(query: str | Dict[str, Any], **kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]

Parametrar

query
Union[str, Dict[str, Any]]
Obligatorisk

Azure Cosmos DB SQL-frågan som ska köras.

parameters
List[Dict[str, Any]]

Valfri matris med parametrar i frågan. Ignoreras om ingen fråga har angetts.

partition_key
Union[str, int, float, bool]

Anger partitionsnyckelvärdet för objektet. Om ingen skickas körs en korspartitionsfråga.

max_item_count
int

Maximalt antal objekt som ska returneras i uppräkningsåtgärden.

response_hook
Callable[[Dict[str, str], <xref:AsyncItemPaged>[Dict[str, Any]]], None]

En anropsbar anropad med svarsmetadata.

Returer

En AsyncItemPaged med konflikter (dikteringar).

Returtyp

<xref:AsyncItemPaged>[Dict[str, Any]]

Undantag

Objektet med det angivna ID:t finns redan.

query_items

Returnera alla resultat som matchar den angivna frågan.

Du kan använda valfritt värde för containernamnet i FROM-satsen, men ofta används containernamnet. I exemplen nedan är containernamnet "products" och aliaset "p" för enklare hänvisning i WHERE-satsen.

svarsfortsättningstoken i frågesvaret. Giltiga värden är positiva heltal. Värdet 0 är detsamma som att inte skicka ett värde (ingen standardgräns). :keyword int max_integrated_cache_staleness_in_ms: Den maximala cache-inaktuellheten för den integrerade cachen i

Millisekunder. För konton som har konfigurerats för att använda den integrerade cachen, med hjälp av sessions- eller slutlig konsekvens, är svaren garanterat inte inaktuella än det här värdet.

query_items(query: str | Dict[str, Any], **kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]

Returer

AsyncItemPaged med objekt (diktamen).

Returtyp

<xref:AsyncItemPaged>[Dict[str, Any]]

Undantag

Objektet med det angivna ID:t finns redan.

Exempel

Hämta alla produkter som inte har upphört:


           import json

           async for item in container.query_items(
                   query='SELECT * FROM products p WHERE p.productModel <> "DISCONTINUED"'
           ):
               print(json.dumps(item, indent=True))

Parameteriserad fråga för att hämta alla produkter som har avbrutits:


           discontinued_items = container.query_items(
               query='SELECT * FROM products p WHERE p.productModel = @model AND p.productName="Widget"',
               parameters=[dict(name="@model", value="DISCONTINUED")],
           )
           async for item in discontinued_items:
               print(json.dumps(item, indent=True))

query_items_change_feed

Hämta en sorterad lista över objekt som har ändrats i den ordning som de ändrades.

query_items_change_feed(**kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]

Parametrar

is_start_from_beginning
bool

Hämta om ändringsflödet ska börja från början (sant) eller från aktuell (falskt). Som standard börjar den från aktuell (false).

partition_key_range_id
str

ChangeFeed-begäranden kan köras mot specifika partitionsnyckelintervall. Detta används för att bearbeta ändringsflödet parallellt mellan flera konsumenter.

continuation
str

e_tag värde som ska användas som fortsättning för läsning av ändringsflöde.

max_item_count
int

Maximalt antal objekt som ska returneras i uppräkningsåtgärden.

partition_key
Union[str, int, float, bool]

partitionsnyckel där ChangeFeed-begäranden är riktade.

response_hook
Callable[[Dict[str, str], <xref:AsyncItemPaged>[Dict[str, Any]]], None]

En anropsbar anropad med svarsmetadata.

Returer

AsyncItemPaged med objekt (diktamen).

Returtyp

<xref:AsyncItemPaged>[Dict[str, Any]]

Undantag

Objektet med det angivna ID:t finns redan.

read

Läs containeregenskaperna.

async read(**kwargs: Any) -> Dict[str, Any]

Parametrar

populate_partition_key_range_statistics
bool

Aktivera returnering av statistik för partitionsnyckelintervall i svarshuvuden.

populate_quota_info
bool

Aktivera returnering av kvotinformation för samlingslagring i svarshuvuden.

session_token
str

Token för användning med sessionskonsekvens.

initial_headers
dict[str, str]

Inledande rubriker som ska skickas som en del av begäran.

response_hook
Callable[[Dict[str, str], Dict[str, Any]], None]

En anropsbar anropad med svarsmetadata.

Returer

Diktamen som representerar den hämtade containern.

Returtyp

Undantag

Upphöjt om containern inte kunde hämtas. Detta inkluderar om containern inte finns.

read_all_items

Visa en lista över alla objekt i containern.

read_all_items(**kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]

Parametrar

max_item_count
int

Maximalt antal objekt som ska returneras i uppräkningsåtgärden.

session_token
str

Token för användning med sessionskonsekvens.

initial_headers
dict[str, str]

Inledande rubriker som ska skickas som en del av begäran.

response_hook
Callable[[Dict[str, str], <xref:AsyncItemPaged>[Dict[str, Any]]], None]

En anropsbar anropad med svarsmetadata.

max_integrated_cache_staleness_in_ms
int

Maximal cacheföråldring för den integrerade cachen i millisekunder. För konton som har konfigurerats för att använda den integrerade cachen, med hjälp av sessions- eller slutlig konsekvens, är svaren garanterat inte inaktuella än det här värdet.

Returer

AsyncItemPaged med objekt (diktamen).

Returtyp

<xref:AsyncItemPaged>[Dict[str, Any]]

Undantag

Objektet med det angivna ID:t finns redan.

read_item

Hämta objektet som identifieras av objektet.

async read_item(item: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> Dict[str, Any]

Parametrar

item
Union[str, Dict[str, Any]]
Obligatorisk

Det ID (namn) eller diktat som representerar objektet som ska hämtas.

partition_key
Union[str, int, float, bool]
Obligatorisk

Partitionsnyckel för objektet som ska hämtas.

post_trigger_include
str

utlösar-ID som ska användas som utlösare efter åtgärden.

session_token
str

Token för användning med sessionskonsekvens.

initial_headers
dict[str, str]

Inledande rubriker som ska skickas som en del av begäran.

response_hook
Callable[[Dict[str, str], Dict[str, Any]], None]

En anropsbar anropad med svarsmetadata.

max_integrated_cache_staleness_in_ms
int

Maximal cacheföråldring för den integrerade cachen i millisekunder. För konton som har konfigurerats för att använda den integrerade cachen, med hjälp av sessions- eller slutlig konsekvens, är svaren garanterat inte inaktuella än det här värdet.

Returer

Diktamen som representerar det objekt som ska hämtas.

Returtyp

Undantag

Det gick inte att hämta det angivna objektet.

Exempel

Hämta ett objekt från databasen och uppdatera en av dess egenskaper:


           item = await container.read_item("item2", partition_key="Widget")
           item["productModel"] = "DISCONTINUED"
           updated_item = await container.upsert_item(item)

replace_item

Ersätter det angivna objektet om det finns i containern.

Om objektet inte redan finns i containern utlöses ett undantag.

async replace_item(item: str | Dict[str, Any], body: Dict[str, Any], **kwargs: Any) -> Dict[str, Any]

Parametrar

item
Union[str, Dict[str, Any]]
Obligatorisk

Det ID (namn) eller diktat som representerar objektet som ska ersättas.

body
Dict[str, Any]
Obligatorisk

Ett diktaliknande objekt som representerar objektet som ska ersättas.

pre_trigger_include
str

utlösar-ID som ska användas som föråtgärdsutlösare.

post_trigger_include
str

utlösar-ID som ska användas som utlösare efter åtgärden.

session_token
str

Token för användning med sessionskonsekvens.

initial_headers
dict[str, str]

Inledande rubriker som ska skickas som en del av begäran.

etag
str

Ett ETag-värde eller jokertecknet (*). Används för att kontrollera om resursen har ändrats och agera enligt villkoret som anges av parametern match_condition .

match_condition
MatchConditions

Matchningsvillkoret som ska användas på etag.

response_hook
Callable[[Dict[str, str], Dict[str, Any]], None]

En anropsbar anropad med svarsmetadata.

Returer

En diktamen som representerar objektet efter ersättningen gick igenom.

Returtyp

Undantag

Ersätt misslyckades eller så finns inte objektet med angivet ID.

replace_throughput

Ersätt containerns dataflöde.

Om det inte redan finns några DataflödeEgenskaper för containern utlöses ett undantag.

async replace_throughput(throughput: int | ThroughputProperties, **kwargs: Any) -> ThroughputProperties

Parametrar

throughput
Union[int, ThroughputProperties]
Obligatorisk

Det dataflöde som ska anges.

response_hook
Callable[[Dict[str, str], Dict[str, Any]], None]

En anropsbar anropad med svarsmetadata.

Returer

DataflödeEgenskaper för containern, uppdaterad med nytt dataflöde.

Returtyp

Undantag

Det finns inga dataflödesegenskaper för containern eller så gick det inte att uppdatera dataflödesegenskaperna.

upsert_item

Infoga eller uppdatera det angivna objektet.

Om objektet redan finns i containern ersätts det. Om objektet inte redan finns infogas det.

async upsert_item(body: Dict[str, Any], **kwargs: Any) -> Dict[str, Any]

Parametrar

body
Dict[str, Any]
Obligatorisk

Ett diktaliknande objekt som representerar objektet som ska uppdateras eller infogas.

pre_trigger_include
str

utlösar-ID som ska användas som föråtgärdsutlösare.

post_trigger_include
str

utlösar-ID som ska användas som utlösare efter åtgärden.

session_token
str

Token för användning med sessionskonsekvens.

initial_headers
dict[str, str]

Inledande rubriker som ska skickas som en del av begäran.

etag
str

Ett ETag-värde eller jokertecknet (*). Används för att kontrollera om resursen har ändrats och agera enligt villkoret som anges av parametern match_condition .

match_condition
MatchConditions

Matchningsvillkoret som ska användas på etag.

response_hook
Callable[[Dict[str, str], Dict[str, Any]], None]

En anropsbar anropad med svarsmetadata.

Returer

En diktamen som representerar det upserted objektet.

Returtyp

Undantag

Det gick inte att öka det angivna objektet.

Attribut

is_system_key

scripts