Containers class
用于创建新容器和读取/查询所有容器的作
请参阅 容器,了解如何读取、替换或删除现有容器;使用 .container(id)
。
注意:所有这些作都针对固定预算进行调用。
应设计系统,以便这些调用与应用程序进行子线性缩放。
例如,在每次调用 containers.readAll()
之前不要调用 item.read()
,以确保容器存在;在应用程序启动时执行此作。
属性
database |
方法
create(Container |
创建容器。 容器是项的命名逻辑容器。 数据库可能包含零个或多个命名容器,每个容器包含零个或多个 JSON 项。 无架构,容器中的项不需要共享相同的结构或字段。 由于容器是应用程序资源,因此可以使用主密钥或资源密钥进行授权。 示例
|
create |
检查容器是否存在,如果容器不存在,则创建它。
这将基于 容器是项的命名逻辑容器。 数据库可能包含零个或多个命名容器,每个容器包含零个或多个 JSON 项。 无架构,容器中的项不需要共享相同的结构或字段。 由于容器是应用程序资源,因此可以使用主密钥或资源密钥进行授权。 示例
|
query(Sql |
查询所有容器。 示例 读取所有容器到数组。
|
query<T>(Sql |
查询所有容器。 示例 读取所有容器到数组。
|
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>",
});
function create(body: ContainerRequest, options?: RequestOptions): Promise<ContainerResponse>
参数
- body
- ContainerRequest
表示容器的正文。
- options
- RequestOptions
用于设置响应页大小、继续标记等选项。
返回
Promise<ContainerResponse>
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
用于设置响应页大小、继续标记等选项。
返回
Promise<ContainerResponse>
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<any>
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 允许返回数组中的所有容器或逐个循环访问它们。