你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

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中的 ID 进行读取作,如果未找到,则创建作。 应确认输出与为非默认属性传入的正文匹配(即索引策略/等)

容器是项的命名逻辑容器。

数据库可能包含零个或多个命名容器,每个容器包含零个或多个 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中的 ID 进行读取作,如果未找到,则创建作。 应确认输出与为非默认属性传入的正文匹配(即索引策略/等)

容器是项的命名逻辑容器。

数据库可能包含零个或多个命名容器,每个容器包含零个或多个 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 允许返回数组中的所有容器或逐个循环访问它们。