Container class
Operazioni per la lettura, la sostituzione o l'eliminazione di un contenitore specifico in base all'ID.
Vedere contenitori per la creazione di nuovi contenitori e la lettura/esecuzione di query su tutti i contenitori; usare .containers.
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 container(id).read() prima di ogni singola chiamata item.read(), per assicurarsi che il contenitore esista; eseguire questa operazione una volta all'avvio dell'applicazione.
Proprietà
| conflicts | Operazioni per la lettura e l'esecuzione di query sui conflitti per il contenitore specificato. Per leggere o eliminare un conflitto specifico, usare |
| database | |
| id | |
| items | Operazioni per la creazione di nuovi elementi e la lettura/esecuzione di query su tutti gli elementi Per leggere, sostituire o eliminare un elemento esistente, usare esempio di Creare un nuovo elemento
|
| scripts | Tutte le operazioni per stored procedure, trigger e funzioni definite dall'utente |
| url | Restituisce un URL di riferimento alla risorsa. Usato per il collegamento in Autorizzazioni. |
Metodi
| conflict(string, Partition |
Consente di leggere, sostituire o eliminare uno specifico conflitto esistente in base all'ID. Usare esempio di
|
| delete(Request |
Eliminare il contenitore esempio di
|
| delete |
Eliminare tutti i documenti appartengono al contenitore per il valore della chiave di partizione fornito esempio di
|
| get |
esempio di
|
| get |
Ottiene prima la definizione della chiave di partizione esaminando la cache in caso contrario leggendo la raccolta. |
| get |
|
| initialize |
Riscalda le cache correlate alla crittografia per il contenitore. esempio di
|
| item(string, Partition |
Consente di leggere, sostituire o eliminare un elemento specifico elemento esistente in base all'ID. Usare esempio di Sostituire un elemento
|
| read(Request |
Leggere la definizione del contenitore esempio di
|
| read |
Ottiene l'offerta nel contenitore. Se non esiste alcun valore, restituisce un oggetto OfferResponse senza definizione. esempio di
|
| read |
Ottiene gli intervalli di chiavi di partizione per il contenitore. esempio di
|
| replace(Container |
Sostituire la definizione del contenitore esempio di
|
Dettagli proprietà
conflicts
Operazioni per la lettura e l'esecuzione di query sui conflitti per il contenitore specificato.
Per leggere o eliminare un conflitto specifico, usare .conflict(id).
Conflicts conflicts
Valore della proprietà
database
id
id: string
Valore della proprietà
string
items
Operazioni per la creazione di nuovi elementi e la lettura/esecuzione di query su tutti gli elementi
Per leggere, sostituire o eliminare un elemento esistente, usare .item(id).
esempio di
Creare un nuovo elemento
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 { resource: createdItem } = await container.items.create({
id: "<item id>",
properties: {},
});
Items items
Valore della proprietà
scripts
Tutte le operazioni per stored procedure, trigger e funzioni definite dall'utente
Scripts scripts
Valore della proprietà
url
Restituisce un URL di riferimento alla risorsa. Usato per il collegamento in Autorizzazioni.
string url
Valore della proprietà
string
Dettagli metodo
conflict(string, PartitionKey)
Consente di leggere, sostituire o eliminare uno specifico conflitto esistente in base all'ID.
Usare .conflicts per creare nuovi conflitti o eseguire query o leggere tutti i conflitti.
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 = database.container("Test Container");
const { resource: conflict } = await container.conflict("<conflict-id>").read();
function conflict(id: string, partitionKey?: PartitionKey): Conflict
Parametri
- id
-
string
ID del conflitto di.
- partitionKey
- PartitionKey
Valori restituiti
delete(RequestOptions)
Eliminare il contenitore
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 });
await client.database("<db id>").container("<container id>").delete();
function delete(options?: RequestOptions): Promise<ContainerResponse>
Parametri
- options
- RequestOptions
Valori restituiti
Promise<ContainerResponse>
deleteAllItemsForPartitionKey(PartitionKey, RequestOptions)
Eliminare tutti i documenti appartengono al contenitore per il valore della chiave di partizione fornito
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",
partitionKey: {
paths: ["/state"],
},
});
const cities = [
{ id: "1", name: "Olympia", state: "WA", isCapitol: true },
{ id: "2", name: "Redmond", state: "WA", isCapitol: false },
{ id: "3", name: "Olympia", state: "IL", isCapitol: false },
];
for (const city of cities) {
await container.items.create(city);
}
await container.deleteAllItemsForPartitionKey("WA");
function deleteAllItemsForPartitionKey(partitionKey: PartitionKey, options?: RequestOptions): Promise<ContainerResponse>
Parametri
- partitionKey
- PartitionKey
Valore della chiave di partizione degli elementi da eliminare
- options
- RequestOptions
Valori restituiti
Promise<ContainerResponse>
getFeedRanges()
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" });
const { resources: ranges } = await container.getFeedRanges();
function getFeedRanges(): Promise<readonly FeedRange[]>
Valori restituiti
Promise<readonly FeedRange[]>
tutti gli intervalli di feed per i quali è possibile recuperare il changefeed.
getPartitionKeyDefinition()
Avviso
Questa API è ora deprecata.
This method has been renamed to readPartitionKeyDefinition.
Ottiene prima la definizione della chiave di partizione esaminando la cache in caso contrario leggendo la raccolta.
function getPartitionKeyDefinition(): Promise<ResourceResponse<PartitionKeyDefinition>>
Valori restituiti
Promise<ResourceResponse<PartitionKeyDefinition>>
getQueryPlan(string | SqlQuerySpec)
function getQueryPlan(query: string | SqlQuerySpec): Promise<Response<PartitionedQueryExecutionInfo>>
Parametri
- query
-
string | SqlQuerySpec
Valori restituiti
Promise<Response<PartitionedQueryExecutionInfo>>
initializeEncryption()
Riscalda le cache correlate alla crittografia per il contenitore.
esempio di
import { ClientSecretCredential } from "@azure/identity";
import {
AzureKeyVaultEncryptionKeyResolver,
CosmosClient,
EncryptionType,
EncryptionAlgorithm,
ClientEncryptionIncludedPath,
ClientEncryptionPolicy,
} from "@azure/cosmos";
const endpoint = "https://your-account.documents.azure.com";
const key = "<database account masterkey>";
const credentials = new ClientSecretCredential("<tenant-id>", "<client-id>", "<app-secret>");
const keyResolver = new AzureKeyVaultEncryptionKeyResolver(credentials);
const client = new CosmosClient({
endpoint,
key,
clientEncryptionOptions: {
keyEncryptionKeyResolver: keyResolver,
},
});
const { database } = await client.databases.createIfNotExists({ id: "<db id>" });
const paths = ["/path1", "/path2", "/path3"].map(
(path) =>
({
path: path,
clientEncryptionKeyId: "< cek - id >",
encryptionType: EncryptionType.DETERMINISTIC,
encryptionAlgorithm: EncryptionAlgorithm.AEAD_AES_256_CBC_HMAC_SHA256,
}) as ClientEncryptionIncludedPath,
);
const clientEncryptionPolicy: ClientEncryptionPolicy = {
includedPaths: paths,
policyFormatVersion: 2,
};
const containerDefinition = {
id: "Test Container",
partitionKey: {
paths: ["/id"],
},
clientEncryptionPolicy: clientEncryptionPolicy,
};
const { container } = await database.containers.createIfNotExists(containerDefinition);
await container.initializeEncryption();
function initializeEncryption(): Promise<void>
Valori restituiti
Promise<void>
item(string, PartitionKey)
Consente di leggere, sostituire o eliminare un elemento specifico elemento esistente in base all'ID.
Usare .items per la creazione di nuovi elementi o l'esecuzione di query o la lettura di tutti gli elementi.
esempio di
Sostituire un elemento
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 { body: replacedItem } = await container
.item("<item id>", "<partition key value>")
.replace({ id: "<item id>", title: "Updated post", authorID: 5 });
function item(id: string, partitionKeyValue?: PartitionKey): Item
Parametri
- partitionKeyValue
- PartitionKey
Valore della chiave di partizione Item
Valori restituiti
read(RequestOptions)
Leggere la definizione del contenitore
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 { resource: database } = await client.database("<db id>").container("<container id>").read();
function read(options?: RequestOptions): Promise<ContainerResponse>
Parametri
- options
- RequestOptions
Valori restituiti
Promise<ContainerResponse>
readOffer(RequestOptions)
Ottiene l'offerta nel contenitore. Se non esiste alcun valore, restituisce un oggetto OfferResponse senza definizione.
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 { resource: offer } = await client
.database("<db id>")
.container("<container id>")
.readOffer();
function readOffer(options?: RequestOptions): Promise<OfferResponse>
Parametri
- options
- RequestOptions
Valori restituiti
Promise<OfferResponse>
readPartitionKeyRanges(FeedOptions)
Ottiene gli intervalli di chiavi di partizione per il contenitore.
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" });
const { resources: ranges } = await container.readPartitionKeyRanges().fetchAll();
function readPartitionKeyRanges(feedOptions?: FeedOptions): QueryIterator<PartitionKeyRange>
Parametri
- feedOptions
- FeedOptions
Opzioni per la richiesta.
Valori restituiti
QueryIterator<PartitionKeyRange>
Iteratore di intervalli di chiavi di partizione.
replace(ContainerDefinition, RequestOptions)
Sostituire la definizione del contenitore
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 containerDefinition = {
id: "Test Container",
partitionKey: {
paths: ["/key1"],
},
throughput: 1000,
};
const { container } = await database.containers.createIfNotExists(containerDefinition);
containerDefinition.throughput = 400;
const { container: replacedContainer } = await container.replace(containerDefinition);
function replace(body: ContainerDefinition, options?: RequestOptions): Promise<ContainerResponse>
Parametri
- body
- ContainerDefinition
- options
- RequestOptions
Valori restituiti
Promise<ContainerResponse>