ContainerProxy Classe
Interface permettant d’interagir avec un conteneur de base de données spécifique.
Cette classe ne doit pas être instanciée directement. Utilisez plutôt la <xref:azure.cosmos.aio.database.DatabaseProxy.get_container_client> méthode pour obtenir un conteneur existant ou la <xref:azure.cosmos.aio.database.DatabaseProxy.create_container> méthode pour créer un conteneur.
Un conteneur dans une base de données d’API SQL Azure Cosmos DB est une collection de documents, chacun d’eux étant représenté sous la forme d’un élément.
- Héritage
-
builtins.objectContainerProxy
Constructeur
ContainerProxy(client_connection: CosmosClientConnection, database_link: str, id: str, properties: Dict[str, Any] = None)
Paramètres
- client_connection
- database_link
- id
- properties
Variables
- id
- str
ID (nom) du conteneur
- session_token
- str
Jeton de session pour le conteneur.
Méthodes
create_item |
Créez un élément dans le conteneur. Pour mettre à jour ou remplacer un élément existant, utilisez la upsert_item méthode . |
delete_all_items_by_partition_key |
La fonctionnalité de suppression par clé de partition est une opération asynchrone en arrière-plan qui vous permet de supprimer tous les documents qui ont la même valeur de clé de partition logique, en utilisant le SDK Cosmos. L’opération de suppression par clé de partition est limitée pour consommer au maximum 10 % du total des RU/s disponibles chaque seconde sur le conteneur. Cela permet de limiter les ressources utilisées par cette tâche en arrière-plan. |
delete_conflict |
Supprimez un conflit spécifié du conteneur. Si le conflit n’existe pas encore dans le conteneur, une exception est levée. |
delete_item |
Supprimez l’élément spécifié du conteneur. Si l’élément n’existe pas déjà dans le conteneur, une exception est levée. |
get_conflict |
Obtenez le conflit identifié par un conflit. |
get_throughput |
Obtenez l’objet DébitProperties pour ce conteneur. Si débitProperties n’existe déjà pour le conteneur, une exception est levée. |
list_conflicts |
Répertoriez tous les conflits dans le conteneur. |
patch_item |
Méthode provisoire Corrige l’élément spécifié avec les opérations fournies s’il existe dans le conteneur. Si l’élément n’existe pas déjà dans le conteneur, une exception est levée. |
query_conflicts |
Retourne tous les conflits correspondant à une requête donnée. |
query_items |
Retourne tous les résultats correspondant à la requête donnée. Vous pouvez utiliser n’importe quelle valeur pour le nom du conteneur dans la clause FROM, mais souvent le nom du conteneur est utilisé. Dans les exemples ci-dessous, le nom du conteneur est « products » et est alias « p » pour faciliter le référencement dans la clause WHERE. jeton de continuation de réponse dans la réponse de requête. Les valeurs valides sont des entiers positifs. Une valeur de 0 équivaut à ne pas passer une valeur (par défaut, aucune limite). :mot clé int max_integrated_cache_staleness_in_ms : l’obsolescence maximale du cache pour le cache intégré dans Millisecondes. Pour les comptes configurés pour utiliser le cache intégré, à l’aide de la cohérence session ou éventuelle, les réponses ne sont pas plus staler que cette valeur. |
query_items_change_feed |
Obtenez une liste triée des éléments qui ont été modifiés, dans l’ordre dans lequel ils ont été modifiés. |
read |
Lisez les propriétés du conteneur. |
read_all_items |
Répertoriez tous les éléments du conteneur. |
read_item |
Obtenez l’élément identifié par élément. |
replace_item |
Remplace l’élément spécifié s’il existe dans le conteneur. Si l’élément n’existe pas déjà dans le conteneur, une exception est levée. |
replace_throughput |
Remplacez le débit du conteneur. Si débitProperties n’existe déjà pour le conteneur, une exception est levée. |
upsert_item |
Insérez ou mettez à jour l’élément spécifié. Si l’élément existe déjà dans le conteneur, il est remplacé. Si l’élément n’existe pas encore, il est inséré. |
create_item
Créez un élément dans le conteneur.
Pour mettre à jour ou remplacer un élément existant, utilisez la upsert_item méthode .
async create_item(body: Dict[str, Any], **kwargs: Any) -> Dict[str, Any]
Paramètres
- pre_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de pré-opération.
- post_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de post-opération.
- indexing_directive
- Union[int, IndexingDirective]
Énumère les valeurs possibles pour indiquer si le document doit être omis de l’indexation. Les valeurs possibles incluent : 0 pour Default, 1 pour Exclude ou 2 pour Include.
- enable_automatic_id_generation
- bool
Activez la génération automatique d’id si aucun ID n’est présent.
- session_token
- str
Jeton à utiliser avec la cohérence de session.
- etag
- str
Spécifiez une valeur ETag ou le caractère générique *. Permet de case activée si la ressource a changé et d’agir en fonction de la condition spécifiée par le paramètre match_condition.
- match_condition
- MatchConditions
Condition de correspondance à utiliser sur l’etag.
Appelable avec les métadonnées de réponse.
Retours
dict représentant le nouvel élément.
Type de retour
Exceptions
L’élément avec l’ID donné existe déjà.
delete_all_items_by_partition_key
La fonctionnalité de suppression par clé de partition est une opération asynchrone en arrière-plan qui vous permet de supprimer tous les documents qui ont la même valeur de clé de partition logique, en utilisant le SDK Cosmos. L’opération de suppression par clé de partition est limitée pour consommer au maximum 10 % du total des RU/s disponibles chaque seconde sur le conteneur. Cela permet de limiter les ressources utilisées par cette tâche en arrière-plan.
async delete_all_items_by_partition_key(partition_key: str | int | float | bool, **kwargs: Any) -> None
Paramètres
- pre_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de pré-opération.
- post_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de post-opération.
- session_token
- str
Jeton à utiliser avec la cohérence de session.
- etag
- str
Spécifiez une valeur ETag ou le caractère générique *. Permet de case activée si la ressource a changé et d’agir en fonction de la condition spécifiée par le paramètre match_condition.
- match_condition
- MatchConditions
Condition de correspondance à utiliser sur l’etag.
- response_hook
- Callable
Appelable avec les métadonnées de réponse.
Type de retour
Exceptions
L’élément avec l’ID donné existe déjà.
delete_conflict
Supprimez un conflit spécifié du conteneur.
Si le conflit n’existe pas encore dans le conteneur, une exception est levée.
async delete_conflict(conflict: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> None
Paramètres
ID (nom) ou dict représentant le conflit à récupérer.
Clé de partition pour le conflit à récupérer.
Type de retour
Exceptions
Le conflit n’a pas été supprimé avec succès.
Le conflit n’existe pas dans le conteneur.
delete_item
Supprimez l’élément spécifié du conteneur.
Si l’élément n’existe pas déjà dans le conteneur, une exception est levée.
async delete_item(item: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> None
Paramètres
Spécifie la valeur de la clé de partition pour l’élément.
- pre_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de pré-opération.
- post_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de post-opération.
- session_token
- str
Jeton à utiliser avec la cohérence de session.
- etag
- str
Spécifiez une valeur ETag ou le caractère générique *. Permet de case activée si la ressource a changé et d’agir en fonction de la condition spécifiée par le paramètre match_condition.
- match_condition
- MatchConditions
Condition de correspondance à utiliser sur l’etag.
Type de retour
Exceptions
L’élément n’a pas été supprimé avec succès.
L’élément n’existe pas dans le conteneur.
get_conflict
Obtenez le conflit identifié par un conflit.
async get_conflict(conflict: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> Dict[str, Any]
Paramètres
ID (nom) ou dict représentant le conflit à récupérer.
Clé de partition pour le conflit à récupérer.
Appelable avec les métadonnées de réponse.
Retours
dict représentant le conflit récupéré.
Type de retour
Exceptions
Le conflit donné n’a pas pu être récupéré.
get_throughput
Obtenez l’objet DébitProperties pour ce conteneur.
Si débitProperties n’existe déjà pour le conteneur, une exception est levée.
async get_throughput(**kwargs: Any) -> ThroughputProperties
Paramètres
Appelable avec les métadonnées de réponse.
Retours
DébitProperties pour le conteneur.
Type de retour
Exceptions
Il n’existe aucune propriété de débit pour le conteneur ou les propriétés de débit n’ont pas pu être récupérées.
list_conflicts
Répertoriez tous les conflits dans le conteneur.
list_conflicts(**kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]
Paramètres
- max_item_count
- int
Nombre maximal d’éléments à retourner dans l’opération d’énumération.
Appelable avec les métadonnées de réponse.
Retours
AsyncItemPaged de conflits (dicts).
Type de retour
Exceptions
L’élément avec l’ID donné existe déjà.
patch_item
Méthode provisoire Corrige l’élément spécifié avec les opérations fournies s’il existe dans le conteneur.
Si l’élément n’existe pas déjà dans le conteneur, une exception est levée.
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]
Paramètres
Liste des opérations correctives à appliquer à l’élément.
- filter_predicate
- str
filtre conditionnel à appliquer aux opérations de correctif.
- pre_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de pré-opération.
- post_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de post-opération.
- session_token
- str
Jeton à utiliser avec la cohérence de session.
- etag
- str
Spécifiez une valeur ETag ou le caractère générique *. Permet de case activée si la ressource a changé et d’agir en fonction de la condition spécifiée par le paramètre match_condition.
- match_condition
- MatchConditions
Condition de correspondance à utiliser sur l’etag.
- response_hook
- Callable
Appelable avec les métadonnées de réponse.
Retours
dict représentant l’élément après l’exécution des opérations de correctif.
Type de retour
Exceptions
Les opérations correctives ont échoué ou l’élément avec l’ID donné n’existe pas.
query_conflicts
Retourne tous les conflits correspondant à une requête donnée.
query_conflicts(query: str | Dict[str, Any], **kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]
Paramètres
Tableau facultatif de paramètres de la requête. Ignoré si aucune requête n’est fournie.
Spécifie la valeur de la clé de partition pour l’élément. Si aucun n’est transmis, une requête entre partitions est exécutée.
- max_item_count
- int
Nombre maximal d’éléments à retourner dans l’opération d’énumération.
Appelable avec les métadonnées de réponse.
Retours
AsyncItemPaged de conflits (dicts).
Type de retour
Exceptions
L’élément avec l’ID donné existe déjà.
query_items
Retourne tous les résultats correspondant à la requête donnée.
Vous pouvez utiliser n’importe quelle valeur pour le nom du conteneur dans la clause FROM, mais souvent le nom du conteneur est utilisé. Dans les exemples ci-dessous, le nom du conteneur est « products » et est alias « p » pour faciliter le référencement dans la clause WHERE.
jeton de continuation de réponse dans la réponse de requête. Les valeurs valides sont des entiers positifs. Une valeur de 0 équivaut à ne pas passer une valeur (par défaut, aucune limite). :mot clé int max_integrated_cache_staleness_in_ms : l’obsolescence maximale du cache pour le cache intégré dans
Millisecondes. Pour les comptes configurés pour utiliser le cache intégré, à l’aide de la cohérence session ou éventuelle, les réponses ne sont pas plus staler que cette valeur.
query_items(query: str | Dict[str, Any], **kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]
Retours
AsyncItemPaged d’éléments (dicts).
Type de retour
Exceptions
L’élément avec l’ID donné existe déjà.
Exemples
Obtenez tous les produits qui n’ont pas été abandonnés :
import json
async for item in container.query_items(
query='SELECT * FROM products p WHERE p.productModel <> "DISCONTINUED"'
):
print(json.dumps(item, indent=True))
Requête paramétrée pour obtenir tous les produits qui ont été abandonnés :
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
Obtenez une liste triée des éléments qui ont été modifiés, dans l’ordre dans lequel ils ont été modifiés.
query_items_change_feed(**kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]
Paramètres
- is_start_from_beginning
- bool
Déterminez si le flux de modification doit commencer à partir du début (true) ou du courant (false). Par défaut, il commence à partir de current (false).
- partition_key_range_id
- str
Les demandes ChangeFeed peuvent être exécutées sur des plages de clés de partition spécifiques. Il est utilisé pour traiter le flux de modification en parallèle sur plusieurs consommateurs.
- continuation
- str
e_tag valeur à utiliser comme continuation pour lire le flux de modification.
- max_item_count
- int
Nombre maximal d’éléments à retourner dans l’opération d’énumération.
clé de partition à laquelle les requêtes ChangeFeed sont ciblées.
Appelable avec les métadonnées de réponse.
Retours
AsyncItemPaged d’éléments (dicts).
Type de retour
Exceptions
L’élément avec l’ID donné existe déjà.
read
Lisez les propriétés du conteneur.
async read(**kwargs: Any) -> Dict[str, Any]
Paramètres
- populate_partition_key_range_statistics
- bool
Activez le retour des statistiques de plage de clés de partition dans les en-têtes de réponse.
- populate_quota_info
- bool
Activez le retour des informations de quota de stockage de collecte dans les en-têtes de réponse.
- session_token
- str
Jeton à utiliser avec la cohérence de session.
Appelable avec les métadonnées de réponse.
Retours
Dict représentant le conteneur récupéré.
Type de retour
Exceptions
Déclenché si le conteneur n’a pas pu être récupéré. Cela inclut si le conteneur n’existe pas.
read_all_items
Répertoriez tous les éléments du conteneur.
read_all_items(**kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]
Paramètres
- max_item_count
- int
Nombre maximal d’éléments à retourner dans l’opération d’énumération.
- session_token
- str
Jeton à utiliser avec la cohérence de session.
Appelable avec les métadonnées de réponse.
- max_integrated_cache_staleness_in_ms
- int
L’obsolescence maximale du cache pour le cache intégré en millisecondes. Pour les comptes configurés pour utiliser le cache intégré, à l’aide de la cohérence session ou éventuelle, les réponses ne sont pas plus staler que cette valeur.
Retours
AsyncItemPaged d’éléments (dicts).
Type de retour
Exceptions
L’élément avec l’ID donné existe déjà.
read_item
Obtenez l’élément identifié par élément.
async read_item(item: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> Dict[str, Any]
Paramètres
- post_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de post-opération.
- session_token
- str
Jeton à utiliser avec la cohérence de session.
Appelable avec les métadonnées de réponse.
- max_integrated_cache_staleness_in_ms
- int
L’obsolescence maximale du cache pour le cache intégré en millisecondes. Pour les comptes configurés pour utiliser le cache intégré, à l’aide de la cohérence session ou éventuelle, les réponses ne sont pas plus staler que cette valeur.
Retours
Dict représentant l’élément à récupérer.
Type de retour
Exceptions
L’élément donné n’a pas pu être récupéré.
Exemples
Obtenez un élément de la base de données et mettez à jour l’une de ses propriétés :
item = await container.read_item("item2", partition_key="Widget")
item["productModel"] = "DISCONTINUED"
updated_item = await container.upsert_item(item)
replace_item
Remplace l’élément spécifié s’il existe dans le conteneur.
Si l’élément n’existe pas déjà dans le conteneur, une exception est levée.
async replace_item(item: str | Dict[str, Any], body: Dict[str, Any], **kwargs: Any) -> Dict[str, Any]
Paramètres
- pre_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de pré-opération.
- post_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de post-opération.
- session_token
- str
Jeton à utiliser avec la cohérence de session.
- etag
- str
Spécifiez une valeur ETag ou le caractère générique *. Permet de case activée si la ressource a changé et d’agir en fonction de la condition spécifiée par le paramètre match_condition.
- match_condition
- MatchConditions
Condition de correspondance à utiliser sur l’etag.
Appelable avec les métadonnées de réponse.
Retours
dict représentant l’élément après l’opération de remplacement.
Type de retour
Exceptions
Le remplacement a échoué ou l’élément avec l’ID donné n’existe pas.
replace_throughput
Remplacez le débit du conteneur.
Si débitProperties n’existe déjà pour le conteneur, une exception est levée.
async replace_throughput(throughput: int | ThroughputProperties, **kwargs: Any) -> ThroughputProperties
Paramètres
Appelable avec les métadonnées de réponse.
Retours
DébitProperties pour le conteneur, mis à jour avec un nouveau débit.
Type de retour
Exceptions
Il n’existe aucune propriété de débit pour le conteneur ou les propriétés de débit n’ont pas pu être mises à jour.
upsert_item
Insérez ou mettez à jour l’élément spécifié.
Si l’élément existe déjà dans le conteneur, il est remplacé. Si l’élément n’existe pas encore, il est inséré.
async upsert_item(body: Dict[str, Any], **kwargs: Any) -> Dict[str, Any]
Paramètres
Objet de type dict représentant l’élément à mettre à jour ou à insérer.
- pre_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de pré-opération.
- post_trigger_include
- str
id de déclencheur à utiliser comme déclencheur de post-opération.
- session_token
- str
Jeton à utiliser avec la cohérence de session.
- etag
- str
Spécifiez une valeur ETag ou le caractère générique *. Permet de case activée si la ressource a changé et d’agir en fonction de la condition spécifiée par le paramètre match_condition.
- match_condition
- MatchConditions
Condition de correspondance à utiliser sur l’etag.
Appelable avec les métadonnées de réponse.
Retours
dict représentant l’élément upserted.
Type de retour
Exceptions
L’élément donné n’a pas pu être upserted.
Attributs
is_system_key
scripts
Azure SDK for Python