Condividi tramite


Containers class

Operazioni per la creazione di nuovi contenitori e la lettura/esecuzione di query su tutti i contenitori

Per la lettura, la sostituzione o l'eliminazione di un contenitore esistente, vedere Container; usare .container(id).

Nota: tutte queste operazioni effettuano chiamate a un budget fisso. È consigliabile progettare il sistema in modo che queste chiamate scalano in modo secondario con l'applicazione. Ad esempio, non chiamare containers.readAll() prima di ogni singola chiamata item.read(), per assicurarsi che il contenitore esista; eseguire questa operazione una volta all'avvio dell'applicazione.

Proprietà

database

Metodi

create(ContainerRequest, RequestOptions)

Crea un contenitore.

Un contenitore è un contenitore logico denominato per gli elementi.

Un database può contenere zero o più contenitori denominati e ogni contenitore è costituito da zero o più elementi JSON.

Essendo privi di schema, gli elementi in un contenitore non devono condividere la stessa struttura o gli stessi campi.

Poiché i contenitori sono risorse dell'applicazione, possono essere autorizzati usando la chiave master o le chiavi di risorsa.

esempio di

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)

Controlla se esiste un contenitore e, in caso contrario, lo crea. In questo modo verrà eseguita un'operazione di lettura basata sull'ID nella body, quindi, se non viene trovata, un'operazione di creazione. È necessario verificare che l'output corrisponda al corpo passato per le proprietà non predefinite (ad esempio criteri di indicizzazione/etc.)

Un contenitore è un contenitore logico denominato per gli elementi.

Un database può contenere zero o più contenitori denominati e ogni contenitore è costituito da zero o più elementi JSON.

Essendo privi di schema, gli elementi in un contenitore non devono condividere la stessa struttura o gli stessi campi.

Poiché i contenitori sono risorse dell'applicazione, possono essere autorizzati usando la chiave master o le chiavi di risorsa.

esempio di

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)

Esegue query su tutti i contenitori.

esempio di

Leggere tutti i contenitori nella matrice.

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)

Esegue query su tutti i contenitori.

esempio di

Leggere tutti i contenitori nella matrice.

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)

Leggere tutti i contenitori.

esempio di

Leggere tutti i contenitori nella matrice.

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();

Dettagli proprietà

database

database: Database

Valore della proprietà

Dettagli metodo

create(ContainerRequest, RequestOptions)

Crea un contenitore.

Un contenitore è un contenitore logico denominato per gli elementi.

Un database può contenere zero o più contenitori denominati e ogni contenitore è costituito da zero o più elementi JSON.

Essendo privi di schema, gli elementi in un contenitore non devono condividere la stessa struttura o gli stessi campi.

Poiché i contenitori sono risorse dell'applicazione, possono essere autorizzati usando la chiave master o le chiavi di risorsa.

esempio di

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>

Parametri

body
ContainerRequest

Rappresenta il corpo del contenitore.

options
RequestOptions

Usare per impostare opzioni come le dimensioni della pagina di risposta, i token di continuazione e così via.

Restituisce

createIfNotExists(ContainerRequest, RequestOptions)

Controlla se esiste un contenitore e, in caso contrario, lo crea. In questo modo verrà eseguita un'operazione di lettura basata sull'ID nella body, quindi, se non viene trovata, un'operazione di creazione. È necessario verificare che l'output corrisponda al corpo passato per le proprietà non predefinite (ad esempio criteri di indicizzazione/etc.)

Un contenitore è un contenitore logico denominato per gli elementi.

Un database può contenere zero o più contenitori denominati e ogni contenitore è costituito da zero o più elementi JSON.

Essendo privi di schema, gli elementi in un contenitore non devono condividere la stessa struttura o gli stessi campi.

Poiché i contenitori sono risorse dell'applicazione, possono essere autorizzati usando la chiave master o le chiavi di risorsa.

esempio di

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>

Parametri

body
ContainerRequest

Rappresenta il corpo del contenitore.

options
RequestOptions

Usare per impostare opzioni come le dimensioni della pagina di risposta, i token di continuazione e così via.

Restituisce

query(SqlQuerySpec, FeedOptions)

Esegue query su tutti i contenitori.

esempio di

Leggere tutti i contenitori nella matrice.

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>

Parametri

query
SqlQuerySpec

Configurazione della query per l'operazione. Per altre informazioni su come configurare una query, vedere SqlQuerySpec.

options
FeedOptions

Usare per impostare opzioni come le dimensioni della pagina di risposta, i token di continuazione e così via.

Restituisce

QueryIterator Consente di restituire contenitori specifici in una matrice o di scorrere i contenitori uno alla volta.

query<T>(SqlQuerySpec, FeedOptions)

Esegue query su tutti i contenitori.

esempio di

Leggere tutti i contenitori nella matrice.

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>

Parametri

query
SqlQuerySpec

Configurazione della query per l'operazione. Per altre informazioni su come configurare una query, vedere SqlQuerySpec.

options
FeedOptions

Usare per impostare opzioni come le dimensioni della pagina di risposta, i token di continuazione e così via.

Restituisce

QueryIterator Consente di restituire contenitori specifici in una matrice o di scorrere i contenitori uno alla volta.

readAll(FeedOptions)

Leggere tutti i contenitori.

esempio di

Leggere tutti i contenitori nella matrice.

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>

Parametri

options
FeedOptions

Usare per impostare opzioni come le dimensioni della pagina di risposta, i token di continuazione e così via.

Restituisce

QueryIterator Consente di restituire tutti i contenitori in una matrice o di scorrere tali contenitori uno alla volta.