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

Items class

创建新项和读取/查询所有项的操作

有关读取、替换或删除现有容器,请参阅 Item ;使用 .item(id)

属性

container

方法

batch(OperationInput[], PartitionKey, RequestOptions)

对项执行事务批处理操作。

Batch 采用操作数组,这些操作根据操作执行的操作进行类型化。 Batch 是事务性的,如果一个操作失败,将回滚所有操作。 选项包括:创建、更新插入、读取、替换和删除

用法示例:

// The partitionKey is a required second argument. If it’s undefined, it defaults to the expected partition key format.
const operations: OperationInput[] = [
   {
      operationType: "Create",
      resourceBody: { id: "doc1", name: "sample", key: "A" }
   },
   {
      operationType: "Upsert",
      resourceBody: { id: "doc2", name: "other", key: "A" }
   }
]

await database.container.items.batch(operations, "A")
bulk(OperationInput[], BulkOptions, RequestOptions)

对项执行批量操作。

批量采用操作数组,这些操作根据操作执行的操作进行类型化。 选项包括:创建、更新插入、读取、替换和删除

用法示例:

// partitionKey is optional at the top level if present in the resourceBody
const operations: OperationInput[] = [
   {
      operationType: "Create",
      resourceBody: { id: "doc1", name: "sample", key: "A" }
   },
   {
      operationType: "Upsert",
      partitionKey: 'A',
      resourceBody: { id: "doc2", name: "other", key: "A" }
   }
]

await database.container.items.bulk(operations)
changeFeed(ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

changeFeed(PartitionKey, ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

示例

从更改源的开头读取。

const iterator = items.readChangeFeed({ startFromBeginning: true });
const firstPage = await iterator.fetchNext();
const firstPageResults = firstPage.result
const secondPage = await iterator.fetchNext();
changeFeed<T>(ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

changeFeed<T>(PartitionKey, ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

create<T>(T, RequestOptions)

创建项。

提供的任何类型 T 不一定由 SDK 强制执行。 可能会获得更多或更少的属性,而强制实施该属性由逻辑决定。

JSON 项没有设置架构。 它们可能包含任意数量的自定义属性。

getChangeFeedIterator<T>(ChangeFeedIteratorOptions)

返回一个迭代器,用于循环访问更改页。 返回的迭代器可用于提取单个分区键、源范围或整个容器的更改。

query(string | SqlQuerySpec, FeedOptions)

查询所有项。

示例

读取数组中的所有项。

const querySpec: SqlQuerySpec = {
  query: "SELECT * FROM Families f WHERE f.lastName = @lastName",
  parameters: [
    {name: "@lastName", value: "Hendricks"}
  ]
};
const {result: items} = await items.query(querySpec).fetchAll();
query<T>(string | SqlQuerySpec, FeedOptions)

查询所有项。

示例

读取数组中的所有项。

const querySpec: SqlQuerySpec = {
  query: "SELECT firstname FROM Families f WHERE f.lastName = @lastName",
  parameters: [
    {name: "@lastName", value: "Hendricks"}
  ]
};
const {result: items} = await items.query<{firstName: string}>(querySpec).fetchAll();
readAll(FeedOptions)

读取所有项。

JSON 项没有设置架构。 它们可能包含任意数量的自定义属性。

示例

读取数组中的所有项。

const {body: containerList} = await items.readAll().fetchAll();
readAll<T>(FeedOptions)

读取所有项。

提供的任何类型 T 不一定由 SDK 强制执行。 可能会获得更多或更少的属性,而强制实施该属性由逻辑决定。

JSON 项没有设置架构。 它们可能包含任意数量的自定义属性。

示例

读取数组中的所有项。

const {body: containerList} = await items.readAll().fetchAll();
readChangeFeed(ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

readChangeFeed(PartitionKey, ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

示例

从更改源的开头读取。

const iterator = items.readChangeFeed({ startFromBeginning: true });
const firstPage = await iterator.fetchNext();
const firstPageResults = firstPage.result
const secondPage = await iterator.fetchNext();
readChangeFeed<T>(ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

readChangeFeed<T>(PartitionKey, ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

upsert(unknown, RequestOptions)

更新插入项。

JSON 项没有设置架构。 它们可能包含任意数量的自定义属性。

upsert<T>(T, RequestOptions)

更新插入项。

提供的任何类型 T 不一定由 SDK 强制执行。 可能会获得更多或更少的属性,而强制实施该属性由逻辑决定。

JSON 项没有设置架构。 它们可能包含任意数量的自定义属性。

属性详细信息

container

container: Container

属性值

方法详细信息

batch(OperationInput[], PartitionKey, RequestOptions)

对项执行事务批处理操作。

Batch 采用操作数组,这些操作根据操作执行的操作进行类型化。 Batch 是事务性的,如果一个操作失败,将回滚所有操作。 选项包括:创建、更新插入、读取、替换和删除

用法示例:

// The partitionKey is a required second argument. If it’s undefined, it defaults to the expected partition key format.
const operations: OperationInput[] = [
   {
      operationType: "Create",
      resourceBody: { id: "doc1", name: "sample", key: "A" }
   },
   {
      operationType: "Upsert",
      resourceBody: { id: "doc2", name: "other", key: "A" }
   }
]

await database.container.items.batch(operations, "A")
function batch(operations: OperationInput[], partitionKey?: PartitionKey, options?: RequestOptions): Promise<Response_2<OperationResponse[]>>

参数

operations

OperationInput[]

操作列表。 限制 100

partitionKey
PartitionKey
options
RequestOptions

用于修改请求

返回

Promise<Response_2<OperationResponse[]>>

bulk(OperationInput[], BulkOptions, RequestOptions)

对项执行批量操作。

批量采用操作数组,这些操作根据操作执行的操作进行类型化。 选项包括:创建、更新插入、读取、替换和删除

用法示例:

// partitionKey is optional at the top level if present in the resourceBody
const operations: OperationInput[] = [
   {
      operationType: "Create",
      resourceBody: { id: "doc1", name: "sample", key: "A" }
   },
   {
      operationType: "Upsert",
      partitionKey: 'A',
      resourceBody: { id: "doc2", name: "other", key: "A" }
   }
]

await database.container.items.bulk(operations)
function bulk(operations: OperationInput[], bulkOptions?: BulkOptions, options?: RequestOptions): Promise<BulkOperationResponse>

参数

operations

OperationInput[]

操作列表。 限制 100

bulkOptions
BulkOptions

用于修改批量行为的可选选项对象。 传递 { continueOnError: true } 以在失败时继续执行操作。 (默认值为 false) ** 注意:在 4.0 版本中,这将默认为 TRUE

options
RequestOptions

用于修改请求。

返回

changeFeed(ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

function changeFeed(changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<any>

参数

changeFeedOptions
ChangeFeedOptions

返回

changeFeed(PartitionKey, ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

示例

从更改源的开头读取。

const iterator = items.readChangeFeed({ startFromBeginning: true });
const firstPage = await iterator.fetchNext();
const firstPageResults = firstPage.result
const secondPage = await iterator.fetchNext();
function changeFeed(partitionKey: PartitionKey, changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<any>

参数

partitionKey
PartitionKey
changeFeedOptions
ChangeFeedOptions

返回

changeFeed<T>(ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

function changeFeed<T>(changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<T>

参数

changeFeedOptions
ChangeFeedOptions

返回

changeFeed<T>(PartitionKey, ChangeFeedOptions)

创建 以 ChangeFeedIterator 循环访问更改页

function changeFeed<T>(partitionKey: PartitionKey, changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<T>

参数

partitionKey
PartitionKey
changeFeedOptions
ChangeFeedOptions

返回

create<T>(T, RequestOptions)

创建项。

提供的任何类型 T 不一定由 SDK 强制执行。 可能会获得更多或更少的属性,而强制实施该属性由逻辑决定。

JSON 项没有设置架构。 它们可能包含任意数量的自定义属性。

function create<T>(body: T, options?: RequestOptions): Promise<ItemResponse<T>>

参数

body

T

表示项的正文。 可以包含任意数量的用户定义的属性。

options
RequestOptions

用于修改请求 (例如,指定分区键) 。

返回

Promise<ItemResponse<T>>

getChangeFeedIterator<T>(ChangeFeedIteratorOptions)

返回一个迭代器,用于循环访问更改页。 返回的迭代器可用于提取单个分区键、源范围或整个容器的更改。

function getChangeFeedIterator<T>(changeFeedIteratorOptions?: ChangeFeedIteratorOptions): ChangeFeedPullModelIterator<T>

参数

changeFeedIteratorOptions
ChangeFeedIteratorOptions

返回

query(string | SqlQuerySpec, FeedOptions)

查询所有项。

示例

读取数组中的所有项。

const querySpec: SqlQuerySpec = {
  query: "SELECT * FROM Families f WHERE f.lastName = @lastName",
  parameters: [
    {name: "@lastName", value: "Hendricks"}
  ]
};
const {result: items} = await items.query(querySpec).fetchAll();
function query(query: string | SqlQuerySpec, options?: FeedOptions): QueryIterator<any>

参数

query

string | SqlQuerySpec

操作的查询配置。 有关如何配置查询的详细信息,请参阅 SqlQuerySpec

options
FeedOptions

用于修改请求 (例如,指定分区键) 。

返回

query<T>(string | SqlQuerySpec, FeedOptions)

查询所有项。

示例

读取数组中的所有项。

const querySpec: SqlQuerySpec = {
  query: "SELECT firstname FROM Families f WHERE f.lastName = @lastName",
  parameters: [
    {name: "@lastName", value: "Hendricks"}
  ]
};
const {result: items} = await items.query<{firstName: string}>(querySpec).fetchAll();
function query<T>(query: string | SqlQuerySpec, options?: FeedOptions): QueryIterator<T>

参数

query

string | SqlQuerySpec

操作的查询配置。 有关如何配置查询的详细信息,请参阅 SqlQuerySpec

options
FeedOptions

用于修改请求 (例如,指定分区键) 。

返回

readAll(FeedOptions)

读取所有项。

JSON 项没有设置架构。 它们可能包含任意数量的自定义属性。

示例

读取数组中的所有项。

const {body: containerList} = await items.readAll().fetchAll();
function readAll(options?: FeedOptions): QueryIterator<ItemDefinition>

参数

options
FeedOptions

用于修改请求 (例如,指定分区键) 。

返回

readAll<T>(FeedOptions)

读取所有项。

提供的任何类型 T 不一定由 SDK 强制执行。 可能会获得更多或更少的属性,而强制实施该属性由逻辑决定。

JSON 项没有设置架构。 它们可能包含任意数量的自定义属性。

示例

读取数组中的所有项。

const {body: containerList} = await items.readAll().fetchAll();
function readAll<T>(options?: FeedOptions): QueryIterator<T>

参数

options
FeedOptions

用于修改请求 (例如,指定分区键) 。

返回

readChangeFeed(ChangeFeedOptions)

警告

现已弃用此 API。

Use changeFeed instead.

创建 以 ChangeFeedIterator 循环访问更改页

function readChangeFeed(changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<any>

参数

changeFeedOptions
ChangeFeedOptions

返回

readChangeFeed(PartitionKey, ChangeFeedOptions)

警告

现已弃用此 API。

Use changeFeed instead.

创建 以 ChangeFeedIterator 循环访问更改页

示例

从更改源的开头读取。

const iterator = items.readChangeFeed({ startFromBeginning: true });
const firstPage = await iterator.fetchNext();
const firstPageResults = firstPage.result
const secondPage = await iterator.fetchNext();
function readChangeFeed(partitionKey: PartitionKey, changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<any>

参数

partitionKey
PartitionKey
changeFeedOptions
ChangeFeedOptions

返回

readChangeFeed<T>(ChangeFeedOptions)

警告

现已弃用此 API。

Use changeFeed instead.

创建 以 ChangeFeedIterator 循环访问更改页

function readChangeFeed<T>(changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<T>

参数

changeFeedOptions
ChangeFeedOptions

返回

readChangeFeed<T>(PartitionKey, ChangeFeedOptions)

警告

现已弃用此 API。

Use changeFeed instead.

创建 以 ChangeFeedIterator 循环访问更改页

function readChangeFeed<T>(partitionKey: PartitionKey, changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<T>

参数

partitionKey
PartitionKey
changeFeedOptions
ChangeFeedOptions

返回

upsert(unknown, RequestOptions)

更新插入项。

JSON 项没有设置架构。 它们可能包含任意数量的自定义属性。

function upsert(body: unknown, options?: RequestOptions): Promise<ItemResponse<ItemDefinition>>

参数

body

unknown

表示项的正文。 可以包含任意数量的用户定义的属性。

options
RequestOptions

用于修改请求 (例如,指定分区键) 。

返回

upsert<T>(T, RequestOptions)

更新插入项。

提供的任何类型 T 不一定由 SDK 强制执行。 可能会获得更多或更少的属性,而强制实施该属性由逻辑决定。

JSON 项没有设置架构。 它们可能包含任意数量的自定义属性。

function upsert<T>(body: T, options?: RequestOptions): Promise<ItemResponse<T>>

参数

body

T

表示项的正文。 可以包含任意数量的用户定义的属性。

options
RequestOptions

用于修改请求 (例如,指定分区键) 。

返回

Promise<ItemResponse<T>>