Поделиться через


Containers class

Операции для создания контейнеров и чтения и запроса всех контейнеров

Сведения о чтении, замене или удалении существующего контейнера см. в контейнера; используйте .container(id).

Примечание. Все эти операции выполняют вызовы к фиксированному бюджету. Вы должны разработать систему таким образом, чтобы эти вызовы масштабировать подстроки с приложением. Например, не вызывайте containers.readAll() перед каждым вызовом item.read(), чтобы убедиться, что контейнер существует; Выполните это один раз при запуске приложения.

Свойства

database

Методы

create(ContainerRequest, RequestOptions)

Создает контейнер.

Контейнер — это именованный логический контейнер для элементов.

База данных может содержать ноль или несколько именованных контейнеров, и каждый контейнер состоит из нуля или нескольких элементов JSON.

Без схемы элементы в контейнере не должны совместно использовать одну и ту же структуру или поля.

Так как контейнеры являются ресурсами приложения, они могут быть авторизованы с помощью главного ключа или ключей ресурсов.

пример

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const container = client.database("<database id>").containers.create({
  id: "<name here>",
});
createIfNotExists(ContainerRequest, RequestOptions)

Проверяет, существует ли контейнер и, если он отсутствует, создает его. Это приведет к выполнению операции чтения на основе идентификатора в body, а затем, если он не найден, операция создания. Убедитесь, что выходные данные соответствуют тексту, который вы передали для свойств, отличных от по умолчанию (т. е. политики индексирования/т. д.).

Контейнер — это именованный логический контейнер для элементов.

База данных может содержать ноль или несколько именованных контейнеров, и каждый контейнер состоит из нуля или нескольких элементов JSON.

Без схемы элементы в контейнере не должны совместно использовать одну и ту же структуру или поля.

Так как контейнеры являются ресурсами приложения, они могут быть авторизованы с помощью главного ключа или ключей ресурсов.

пример

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });
query(SqlQuerySpec, FeedOptions)

Запрашивает все контейнеры.

пример

Чтение всех контейнеров в массив.

import { CosmosClient, SqlQuerySpec } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const querySpec: SqlQuerySpec = {
  query: `SELECT * FROM root r WHERE r.id = @container`,
  parameters: [{ name: "@container", value: "Todo" }],
};
const { resources: containerList } = await client
  .database("<db id>")
  .containers.query(querySpec)
  .fetchAll();
query<T>(SqlQuerySpec, FeedOptions)

Запрашивает все контейнеры.

пример

Чтение всех контейнеров в массив.

import { CosmosClient, SqlQuerySpec } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const querySpec: SqlQuerySpec = {
  query: `SELECT * FROM root r WHERE r.id = @container`,
  parameters: [{ name: "@container", value: "Todo" }],
};
const { resources: containerList } = await client
  .database("<db id>")
  .containers.query(querySpec)
  .fetchAll();
readAll(FeedOptions)

Чтение всех контейнеров.

пример

Чтение всех контейнеров в массив.

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { resources: containerList } = await client
  .database("<db id>")
  .containers.readAll()
  .fetchAll();

Сведения о свойстве

database

database: Database

Значение свойства

Сведения о методе

create(ContainerRequest, RequestOptions)

Создает контейнер.

Контейнер — это именованный логический контейнер для элементов.

База данных может содержать ноль или несколько именованных контейнеров, и каждый контейнер состоит из нуля или нескольких элементов JSON.

Без схемы элементы в контейнере не должны совместно использовать одну и ту же структуру или поля.

Так как контейнеры являются ресурсами приложения, они могут быть авторизованы с помощью главного ключа или ключей ресурсов.

пример

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });
const container = client.database("<database id>").containers.create({
  id: "<name here>",
});
function create(body: ContainerRequest, options?: RequestOptions): Promise<ContainerResponse>

Параметры

body
ContainerRequest

Представляет текст контейнера.

options
RequestOptions

Используйте для задания параметров, таких как размер страницы ответа, маркеры продолжения и т. д.

Возвращаемое значение

createIfNotExists(ContainerRequest, RequestOptions)

Проверяет, существует ли контейнер и, если он отсутствует, создает его. Это приведет к выполнению операции чтения на основе идентификатора в body, а затем, если он не найден, операция создания. Убедитесь, что выходные данные соответствуют тексту, который вы передали для свойств, отличных от по умолчанию (т. е. политики индексирования/т. д.).

Контейнер — это именованный логический контейнер для элементов.

База данных может содержать ноль или несколько именованных контейнеров, и каждый контейнер состоит из нуля или нескольких элементов JSON.

Без схемы элементы в контейнере не должны совместно использовать одну и ту же структуру или поля.

Так как контейнеры являются ресурсами приложения, они могут быть авторизованы с помощью главного ключа или ключей ресурсов.

пример

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });
function createIfNotExists(body: ContainerRequest, options?: RequestOptions): Promise<ContainerResponse>

Параметры

body
ContainerRequest

Представляет текст контейнера.

options
RequestOptions

Используйте для задания параметров, таких как размер страницы ответа, маркеры продолжения и т. д.

Возвращаемое значение

query(SqlQuerySpec, FeedOptions)

Запрашивает все контейнеры.

пример

Чтение всех контейнеров в массив.

import { CosmosClient, SqlQuerySpec } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const querySpec: SqlQuerySpec = {
  query: `SELECT * FROM root r WHERE r.id = @container`,
  parameters: [{ name: "@container", value: "Todo" }],
};
const { resources: containerList } = await client
  .database("<db id>")
  .containers.query(querySpec)
  .fetchAll();
function query(query: SqlQuerySpec, options?: FeedOptions): QueryIterator<any>

Параметры

query
SqlQuerySpec

Настройка запроса для операции. Дополнительные сведения о настройке запроса см. в SqlQuerySpec.

options
FeedOptions

Используйте для задания параметров, таких как размер страницы ответа, маркеры продолжения и т. д.

Возвращаемое значение

QueryIterator Позволяет возвращать определенные контейнеры в массиве или выполнять итерацию по одному.

query<T>(SqlQuerySpec, FeedOptions)

Запрашивает все контейнеры.

пример

Чтение всех контейнеров в массив.

import { CosmosClient, SqlQuerySpec } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const querySpec: SqlQuerySpec = {
  query: `SELECT * FROM root r WHERE r.id = @container`,
  parameters: [{ name: "@container", value: "Todo" }],
};
const { resources: containerList } = await client
  .database("<db id>")
  .containers.query(querySpec)
  .fetchAll();
function query<T>(query: SqlQuerySpec, options?: FeedOptions): QueryIterator<T>

Параметры

query
SqlQuerySpec

Настройка запроса для операции. Дополнительные сведения о настройке запроса см. в SqlQuerySpec.

options
FeedOptions

Используйте для задания параметров, таких как размер страницы ответа, маркеры продолжения и т. д.

Возвращаемое значение

QueryIterator Позволяет возвращать определенные контейнеры в массиве или выполнять итерацию по одному.

readAll(FeedOptions)

Чтение всех контейнеров.

пример

Чтение всех контейнеров в массив.

import { CosmosClient } from "@azure/cosmos";

const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const client = new CosmosClient({ endpoint, key });

const { resources: containerList } = await client
  .database("<db id>")
  .containers.readAll()
  .fetchAll();
function readAll(options?: FeedOptions): QueryIterator<ContainerDefinition & Resource>

Параметры

options
FeedOptions

Используйте для задания параметров, таких как размер страницы ответа, маркеры продолжения и т. д.

Возвращаемое значение

QueryIterator Позволяет возвращать все контейнеры в массиве или выполнять итерацию по одному.