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

StoredProcedures class

用于创建、更新插入或读取/查询所有存储过程的作。

有关按 ID 读取、替换、删除或执行特定现有存储过程的作,请参阅 container.storedProcedure()

属性

container

方法

create(StoredProcedureDefinition, RequestOptions)

创建 StoredProcedure。

Azure Cosmos DB 允许在存储层中直接针对项容器执行存储过程。 脚本在指定容器的主存储分区上的 ACID 事务下执行。 有关更多详细信息,请参阅服务器端 JavaScript API 文档。

示例

import { CosmosClient, StoredProcedureDefinition } 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" });

const sprocDefinition: StoredProcedureDefinition = {
  id: "sample sproc",
  body: "function () { const x = 10; }",
};

const { resource: sproc } = await container.scripts.storedProcedures.create(sprocDefinition);
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 { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const querySpec: SqlQuerySpec = {
  query: `SELECT * FROM root r WHERE r.id = @sproc`,
  parameters: [{ name: "@sproc", value: "Todo" }],
};
const { resources: storedProceduresList } = await container.scripts.storedProcedures
  .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 { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const querySpec: SqlQuerySpec = {
  query: `SELECT * FROM root r WHERE r.id = @sproc`,
  parameters: [{ name: "@sproc", value: "Todo" }],
};
const { resources: storedProceduresList } = await container.scripts.storedProcedures
  .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 { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const { resources: storedProceduresList } = await container.scripts.storedProcedures
  .readAll()
  .fetchAll();

属性详细信息

container

container: Container

属性值

方法详细信息

create(StoredProcedureDefinition, RequestOptions)

创建 StoredProcedure。

Azure Cosmos DB 允许在存储层中直接针对项容器执行存储过程。 脚本在指定容器的主存储分区上的 ACID 事务下执行。 有关更多详细信息,请参阅服务器端 JavaScript API 文档。

示例

import { CosmosClient, StoredProcedureDefinition } 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" });

const sprocDefinition: StoredProcedureDefinition = {
  id: "sample sproc",
  body: "function () { const x = 10; }",
};

const { resource: sproc } = await container.scripts.storedProcedures.create(sprocDefinition);
function create(body: StoredProcedureDefinition, options?: RequestOptions): Promise<StoredProcedureResponse>

参数

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 { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

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

参数

query
SqlQuerySpec

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

options
FeedOptions

返回

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 { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

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

参数

query
SqlQuerySpec

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

options
FeedOptions

返回

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 { database } = await client.databases.createIfNotExists({ id: "Test Database" });

const { container } = await database.containers.createIfNotExists({ id: "Test Container" });

const { resources: storedProceduresList } = await container.scripts.storedProcedures
  .readAll()
  .fetchAll();
function readAll(options?: FeedOptions): QueryIterator<StoredProcedureDefinition & Resource>

参数

options
FeedOptions

返回