ContainerProxy Класс
Интерфейс для взаимодействия с определенным контейнером базы данных.
Экземпляр этого класса не следует создавать напрямую. Вместо этого используйте <xref:azure.cosmos.aio.database.DatabaseProxy.get_container_client> метод для получения существующего контейнера или <xref:azure.cosmos.aio.database.DatabaseProxy.create_container> метод для создания нового контейнера.
Контейнер в базе данных API SQL Azure Cosmos DB — это коллекция документов, каждый из которых представлен в виде элемента.
- Наследование
-
builtins.objectContainerProxy
Конструктор
ContainerProxy(client_connection: CosmosClientConnection, database_link: str, id: str, properties: Dict[str, Any] = None)
Параметры
- client_connection
- database_link
- id
- properties
Переменные
- id
- str
Идентификатор (имя) контейнера
- session_token
- str
Маркер сеанса для контейнера.
Методы
create_item |
Создайте элемент в контейнере. Чтобы обновить или заменить существующий элемент, используйте upsert_item метод . |
delete_all_items_by_partition_key |
Функция удаления по ключу секции — это асинхронная фоновая операция, которая позволяет удалять все документы с одинаковым значением ключа логической секции с помощью пакета SDK для Cosmos. Операция удаления по ключу секции ограничена потреблением не более 10 % от общего количества доступных ЕЗ/с в контейнере каждую секунду. Это помогает ограничить ресурсы, используемые этой фоновой задачей. |
delete_conflict |
Удалите указанный конфликт из контейнера. Если конфликт еще не существует в контейнере, возникает исключение. |
delete_item |
Удалите указанный элемент из контейнера. Если элемент еще не существует в контейнере, возникает исключение. |
get_conflict |
Получение конфликта, идентифицированного по конфликту. |
get_throughput |
Получите объект ThroughputProperties для этого контейнера. Если свойство ThroughputProperties для контейнера еще не существует, возникает исключение. |
list_conflicts |
Вывод списка всех конфликтов в контейнере. |
patch_item |
Временный метод Исправляет указанный элемент с помощью предоставленных операций, если он существует в контейнере. Если элемент еще не существует в контейнере, возникает исключение. |
query_conflicts |
Возвращает все конфликты, соответствующие заданному запросу. |
query_items |
Возвращает все результаты, соответствующие заданному запросу. Вы можете использовать любое значение для имени контейнера в предложении FROM, но часто используется имя контейнера. В приведенных ниже примерах имя контейнера — "products" и псевдоним p для упрощения ссылки в предложении WHERE. маркер продолжения ответа в ответе запроса. Допустимые значения являются положительными целыми числами. Значение 0 совпадает с тем, что значение не передается (по умолчанию нет ограничений). :ключевое слово int max_integrated_cache_staleness_in_ms: максимальное устаревание кэша для интегрированного кэша в Миллисекунд. Для учетных записей, настроенных для использования интегрированного кэша с использованием сеанса или итоговой согласованности, ответы гарантированно не будут устаревшими, чем это значение. |
query_items_change_feed |
Получение отсортированного списка измененных элементов в порядке их изменения. |
read |
Чтение свойств контейнера. |
read_all_items |
Вывод списка всех элементов в контейнере. |
read_item |
Получение элемента, идентифицированного по элементу. |
replace_item |
Заменяет указанный элемент, если он существует в контейнере. Если элемент еще не существует в контейнере, возникает исключение. |
replace_throughput |
Замените пропускную способность контейнера. Если свойства ThroughputProperties для контейнера уже не существуют, возникает исключение. |
upsert_item |
Вставка или обновление указанного элемента. Если элемент уже существует в контейнере, он заменяется. Если элемент еще не существует, он вставляется. |
create_item
Создайте элемент в контейнере.
Чтобы обновить или заменить существующий элемент, используйте upsert_item метод .
async create_item(body: Dict[str, Any], **kwargs: Any) -> Dict[str, Any]
Параметры
- pre_trigger_include
- str
идентификатор триггера, используемый в качестве триггера перед операцией.
- post_trigger_include
- str
идентификатор триггера, используемый в качестве триггера после операции.
- indexing_directive
- Union[int, IndexingDirective]
Перечисляет возможные значения, указывающие, следует ли пропускать документ из индексирования. Возможные значения: 0 — значение по умолчанию, 1 — исключение или 2 — включение.
- enable_automatic_id_generation
- bool
Включите автоматическое создание идентификаторов, если идентификатор отсутствует.
- session_token
- str
Маркер для использования с согласованностью сеанса.
- etag
- str
Значение ETag или подстановочный знак (*). Используется для проверка, если ресурс изменился, и действует в соответствии с условием, заданным параметром match_condition.
- match_condition
- MatchConditions
Условие соответствия, используемое для etag.
Вызываемый объект , вызываемый с метаданными ответа.
Возвращаемое значение
Дикт, представляющий новый элемент.
Возвращаемый тип
Исключения
Элемент с указанным идентификатором уже существует.
delete_all_items_by_partition_key
Функция удаления по ключу секции — это асинхронная фоновая операция, которая позволяет удалять все документы с одинаковым значением ключа логической секции с помощью пакета SDK для Cosmos. Операция удаления по ключу секции ограничена потреблением не более 10 % от общего количества доступных ЕЗ/с в контейнере каждую секунду. Это помогает ограничить ресурсы, используемые этой фоновой задачей.
async delete_all_items_by_partition_key(partition_key: str | int | float | bool, **kwargs: Any) -> None
Параметры
- pre_trigger_include
- str
идентификатор триггера, используемый в качестве триггера перед операцией.
- post_trigger_include
- str
идентификатор триггера, используемый в качестве триггера после операции.
- session_token
- str
Маркер для использования с согласованностью сеанса.
- etag
- str
Значение ETag или подстановочный знак (*). Используется для проверка, если ресурс изменился, и действует в соответствии с условием, заданным параметром match_condition.
- match_condition
- MatchConditions
Условие соответствия, используемое для etag.
- response_hook
- Callable
Вызываемый объект , вызываемый с метаданными ответа.
Возвращаемый тип
Исключения
Элемент с указанным идентификатором уже существует.
delete_conflict
Удалите указанный конфликт из контейнера.
Если конфликт еще не существует в контейнере, возникает исключение.
async delete_conflict(conflict: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> None
Параметры
Идентификатор (имя) или словарь, представляющий извлекаемую конфликт.
Вызываемый объект , вызываемый с метаданными ответа.
Возвращаемый тип
Исключения
Конфликт не был успешно удален.
Конфликт не существует в контейнере.
delete_item
Удалите указанный элемент из контейнера.
Если элемент еще не существует в контейнере, возникает исключение.
async delete_item(item: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> None
Параметры
Идентификатор (имя) или словарь, представляющий удаляемый элемент.
- pre_trigger_include
- str
идентификатор триггера, используемый в качестве триггера перед операцией.
- post_trigger_include
- str
идентификатор триггера, используемый в качестве триггера после операции.
- session_token
- str
Маркер для использования с согласованностью сеанса.
- etag
- str
Значение ETag или подстановочный знак (*). Используется для проверка, если ресурс изменился, и действует в соответствии с условием, заданным параметром match_condition.
- match_condition
- MatchConditions
Условие соответствия, используемое для etag.
Вызываемый объект , вызываемый с метаданными ответа.
Возвращаемый тип
Исключения
Элемент не был успешно удален.
Элемент не существует в контейнере.
get_conflict
Получение конфликта, идентифицированного по конфликту.
async get_conflict(conflict: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> Dict[str, Any]
Параметры
Идентификатор (имя) или словарь, представляющий извлекаемую конфликт.
Вызываемый объект , вызываемый с метаданными ответа.
Возвращаемое значение
Дикт, представляющий полученный конфликт.
Возвращаемый тип
Исключения
Не удалось получить заданный конфликт.
get_throughput
Получите объект ThroughputProperties для этого контейнера.
Если свойство ThroughputProperties для контейнера еще не существует, возникает исключение.
async get_throughput(**kwargs: Any) -> ThroughputProperties
Параметры
Вызываемый объект , вызываемый с метаданными ответа.
Возвращаемое значение
ThroughputProperties для контейнера.
Возвращаемый тип
Исключения
Для контейнера не существует свойств пропускной способности, или не удалось получить свойства пропускной способности.
list_conflicts
Вывод списка всех конфликтов в контейнере.
list_conflicts(**kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]
Параметры
- max_item_count
- int
Максимальное количество элементов, возвращаемых в операции перечисления.
Вызываемый объект , вызываемый с метаданными ответа.
Возвращаемое значение
AsyncItemPaged конфликтов (dicts).
Возвращаемый тип
Исключения
Элемент с указанным идентификатором уже существует.
patch_item
Временный метод Исправляет указанный элемент с помощью предоставленных операций, если он существует в контейнере.
Если элемент еще не существует в контейнере, возникает исключение.
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]
Параметры
Идентификатор (имя) или словарь, представляющий элемент для исправления.
Список операций исправления, применяемых к элементу.
- filter_predicate
- str
условный фильтр, применяемый к операциям исправления.
- pre_trigger_include
- str
идентификатор триггера, используемый в качестве триггера перед операцией.
- post_trigger_include
- str
идентификатор триггера, используемый в качестве триггера после операции.
- session_token
- str
Маркер для использования с согласованностью сеанса.
- etag
- str
Значение ETag или подстановочный знак (*). Используется для проверка, если ресурс изменился, и действует в соответствии с условием, заданным параметром match_condition.
- match_condition
- MatchConditions
Условие соответствия, используемое для etag.
- response_hook
- Callable
Вызываемый объект , вызываемый с метаданными ответа.
Возвращаемое значение
Дикт, представляющий элемент после выполнения операций исправления.
Возвращаемый тип
Исключения
Операция исправления завершилась сбоем или элемент с заданным идентификатором не существует.
query_conflicts
Возвращает все конфликты, соответствующие заданному запросу.
query_conflicts(query: str | Dict[str, Any], **kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]
Параметры
Необязательный массив параметров для запроса. Игнорируется, если запрос не предоставлен.
Задает значение ключа секции для элемента. Если ни один из них не передается, будет выполнен межсекционный запрос.
- max_item_count
- int
Максимальное количество элементов, возвращаемых в операции перечисления.
Вызываемый объект , вызываемый с метаданными ответа.
Возвращаемое значение
AsyncItemPaged конфликтов (dicts).
Возвращаемый тип
Исключения
Элемент с указанным идентификатором уже существует.
query_items
Возвращает все результаты, соответствующие заданному запросу.
Вы можете использовать любое значение для имени контейнера в предложении FROM, но часто используется имя контейнера. В приведенных ниже примерах имя контейнера — "products" и псевдоним p для упрощения ссылки в предложении WHERE.
маркер продолжения ответа в ответе запроса. Допустимые значения являются положительными целыми числами. Значение 0 совпадает с тем, что значение не передается (по умолчанию нет ограничений). :ключевое слово int max_integrated_cache_staleness_in_ms: максимальное устаревание кэша для интегрированного кэша в
Миллисекунд. Для учетных записей, настроенных для использования интегрированного кэша с использованием сеанса или итоговой согласованности, ответы гарантированно не будут устаревшими, чем это значение.
query_items(query: str | Dict[str, Any], **kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]
Возвращаемое значение
AsyncItemPaged элементов (диктов).
Возвращаемый тип
Исключения
Элемент с указанным идентификатором уже существует.
Примеры
Получите все продукты, которые не были прекращены:
import json
async for item in container.query_items(
query='SELECT * FROM products p WHERE p.productModel <> "DISCONTINUED"'
):
print(json.dumps(item, indent=True))
Параметризованный запрос для получения всех продуктов, которые были прекращены:
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
Получение отсортированного списка измененных элементов в порядке их изменения.
query_items_change_feed(**kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]
Параметры
- is_start_from_beginning
- bool
Определяет, должен ли канал изменений начинаться с начала (true) или с текущего (false). По умолчанию он начинается с текущего (false).
- partition_key_range_id
- str
Запросы ChangeFeed можно выполнять для определенных диапазонов ключей секций. Используется для параллельной обработки канала изменений несколькими потребителями.
- continuation
- str
e_tag значение, которое будет использоваться в качестве продолжения для чтения канала изменений.
- max_item_count
- int
Максимальное количество элементов, возвращаемых в операции перечисления.
Вызываемый объект с метаданными ответа.
Возвращаемое значение
AsyncItemPaged элементов (диктов).
Возвращаемый тип
Исключения
Элемент с указанным идентификатором уже существует.
read
Чтение свойств контейнера.
async read(**kwargs: Any) -> Dict[str, Any]
Параметры
- populate_partition_key_range_statistics
- bool
Включите возвращать статистику по диапазону ключей секции в заголовках ответов.
- populate_quota_info
- bool
Включите возврат сведений о квоте хранилища коллекций в заголовках ответов.
- session_token
- str
Маркер для использования с согласованностью сеансов.
Вызываемый объект с метаданными ответа.
Возвращаемое значение
Дикт, представляющий полученный контейнер.
Возвращаемый тип
Исключения
Возникает, если контейнер не удалось получить. Сюда входит значение , если контейнер не существует.
read_all_items
Вывод списка всех элементов в контейнере.
read_all_items(**kwargs: Any) -> AsyncItemPaged[Dict[str, Any]]
Параметры
- max_item_count
- int
Максимальное количество элементов, возвращаемых в операции перечисления.
- session_token
- str
Маркер для использования с согласованностью сеансов.
Вызываемый объект с метаданными ответа.
- max_integrated_cache_staleness_in_ms
- int
Максимальное устаревание кэша для интегрированного кэша в миллисекундах. Для учетных записей, настроенных для использования интегрированного кэша с использованием сеанса или итоговой согласованности, ответы гарантированно не будут устаревшими, чем это значение.
Возвращаемое значение
AsyncItemPaged элементов (диктов).
Возвращаемый тип
Исключения
Элемент с указанным идентификатором уже существует.
read_item
Получение элемента, идентифицированного по элементу.
async read_item(item: str | Dict[str, Any], partition_key: str | int | float | bool, **kwargs: Any) -> Dict[str, Any]
Параметры
Идентификатор (имя) или дикт, представляющий извлекаемый элемент.
- post_trigger_include
- str
идентификатор триггера, используемый в качестве триггера после операции.
- session_token
- str
Маркер для использования с согласованностью сеансов.
Вызываемый объект с метаданными ответа.
- max_integrated_cache_staleness_in_ms
- int
Максимальное устаревание кэша для интегрированного кэша в миллисекундах. Для учетных записей, настроенных для использования интегрированного кэша с использованием сеанса или итоговой согласованности, ответы гарантированно не будут устаревшими, чем это значение.
Возвращаемое значение
Дикт, представляющий извлекаемый элемент.
Возвращаемый тип
Исключения
Не удалось получить заданный элемент.
Примеры
Получите элемент из базы данных и обновите одно из его свойств:
item = await container.read_item("item2", partition_key="Widget")
item["productModel"] = "DISCONTINUED"
updated_item = await container.upsert_item(item)
replace_item
Заменяет указанный элемент, если он существует в контейнере.
Если элемент еще не существует в контейнере, возникает исключение.
async replace_item(item: str | Dict[str, Any], body: Dict[str, Any], **kwargs: Any) -> Dict[str, Any]
Параметры
Идентификатор (имя) или дикт, представляющий заменяемый элемент.
- pre_trigger_include
- str
идентификатор триггера, используемый в качестве триггера перед операцией.
- post_trigger_include
- str
идентификатор триггера, используемый в качестве триггера после операции.
- session_token
- str
Маркер для использования с согласованностью сеансов.
- etag
- str
Значение ETag или подстановочный знак (*). Используется для проверка, если ресурс изменился, и действует в соответствии с условием, заданным параметром match_condition.
- match_condition
- MatchConditions
Условие соответствия, используемое для etag.
Вызываемый объект с метаданными ответа.
Возвращаемое значение
Дикт, представляющий элемент после завершения замены.
Возвращаемый тип
Исключения
Сбой замены или элемент с заданным идентификатором не существует.
replace_throughput
Замените пропускную способность контейнера.
Если свойства ThroughputProperties для контейнера уже не существуют, возникает исключение.
async replace_throughput(throughput: int | ThroughputProperties, **kwargs: Any) -> ThroughputProperties
Параметры
Вызываемый объект с метаданными ответа.
Возвращаемое значение
ThroughputProperties для контейнера, обновлена новая пропускная способность.
Возвращаемый тип
Исключения
Для контейнера не существует свойств пропускной способности или не удалось обновить свойства пропускной способности.
upsert_item
Вставка или обновление указанного элемента.
Если элемент уже существует в контейнере, он заменяется. Если элемент еще не существует, он вставляется.
async upsert_item(body: Dict[str, Any], **kwargs: Any) -> Dict[str, Any]
Параметры
Объект, похожий на диктовку, представляющий элемент для обновления или вставки.
- pre_trigger_include
- str
идентификатор триггера, используемый в качестве триггера перед операцией.
- post_trigger_include
- str
идентификатор триггера, используемый в качестве триггера после операции.
- session_token
- str
Маркер для использования с согласованностью сеансов.
- etag
- str
Значение ETag или подстановочный знак (*). Используется для проверка, если ресурс изменился, и действует в соответствии с условием, заданным параметром match_condition.
- match_condition
- MatchConditions
Условие соответствия, используемое для etag.
Вызываемый объект с метаданными ответа.
Возвращаемое значение
Дикт, представляющий вставленный элемент.
Возвращаемый тип
Исключения
Не удалось выполнить обновление заданного элемента.
Атрибуты
is_system_key
scripts
Azure SDK for Python
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по