Items class
Operazioni per la creazione di nuovi elementi e la lettura/esecuzione di query su tutti gli elementi
Vedere Elemento per la lettura, la sostituzione o l'eliminazione di un contenitore esistente; utilizzare .item(id).
Proprietà
| container |
Metodi
| batch(Operation |
Eseguire operazioni batch transazionali sugli elementi. Batch accetta una matrice di operazioni tipate in base alle operazioni eseguite dall'operazione. Batch è transazionale e eseguirà il rollback di tutte le operazioni in caso di errore. Le scelte sono: Create, Upsert, Read, Replace e Delete Esempio di utilizzo:
|
| bulk(Operation |
Eseguire operazioni bulk sugli elementi. |
| change |
Creare un |
| change |
Creare un Example Leggere dall'inizio del feed di modifiche.
|
| change |
Creare un |
| change |
Creare un |
| create<T>(T, Request |
Creare un elemento. Qualsiasi tipo specificato, T, non viene necessariamente applicato dall'SDK. È possibile ottenere più o meno proprietà ed è necessario applicare la logica. Non esiste uno schema impostato per gli elementi JSON. Possono contenere un numero qualsiasi di proprietà personalizzate. Example Creare un elemento.
|
| execute |
Eseguire operazioni bulk sugli elementi. Example
|
| get |
Restituisce un iteratore per scorrere le pagine di modifiche. L'iteratore restituito può essere usato per recuperare le modifiche per una singola chiave di partizione, un intervallo di feed o un intero contenitore. Example
|
| get |
Esegue una query su tutti gli elementi in un contenitore crittografato. Example Legge tutti gli elementi nella matrice.
|
| query(string | Sql |
Esegue query su tutti gli elementi. Example Legge tutti gli elementi nella matrice.
|
| query<T>(string | Sql |
Esegue query su tutti gli elementi. Example Legge tutti gli elementi nella matrice.
|
| read |
Legge tutti gli elementi. Non esiste uno schema impostato per gli elementi JSON. Possono contenere un numero qualsiasi di proprietà personalizzate. Example Legge tutti gli elementi nella matrice.
|
| read |
Legge tutti gli elementi. Qualsiasi tipo specificato, T, non viene necessariamente applicato dall'SDK. È possibile ottenere più o meno proprietà ed è necessario applicare la logica. Non esiste uno schema impostato per gli elementi JSON. Possono contenere un numero qualsiasi di proprietà personalizzate. Example Legge tutti gli elementi nella matrice.
|
| read |
Creare un |
| read |
Creare un Example Leggere dall'inizio del feed di modifiche.
|
| read |
Creare un |
| read |
Creare un |
| upsert(unknown, Request |
Upsert di un elemento. Non esiste uno schema impostato per gli elementi JSON. Possono contenere un numero qualsiasi di proprietà personalizzate. |
| upsert<T>(T, Request |
Upsert di un elemento. Qualsiasi tipo specificato, T, non viene necessariamente applicato dall'SDK. È possibile ottenere più o meno proprietà ed è necessario applicare la logica. Non esiste uno schema impostato per gli elementi JSON. Possono contenere un numero qualsiasi di proprietà personalizzate. Example Upsert di un elemento.
|
Dettagli proprietà
container
Dettagli metodo
batch(OperationInput[], PartitionKey, RequestOptions)
Eseguire operazioni batch transazionali sugli elementi.
Batch accetta una matrice di operazioni tipate in base alle operazioni eseguite dall'operazione. Batch è transazionale e eseguirà il rollback di tutte le operazioni in caso di errore. Le scelte sono: Create, Upsert, Read, Replace e Delete
Esempio di utilizzo:
import { CosmosClient, OperationInput } 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" });
// 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 container.items.batch(operations, "A");
function batch(operations: OperationInput[], partitionKey?: PartitionKey, options?: RequestOptions): Promise<Response<OperationResponse[]>>
Parametri
- operations
Elenco di operazioni. Limite 100
- partitionKey
- PartitionKey
- options
- RequestOptions
Utilizzato per modificare la richiesta
Restituisce
Promise<Response<OperationResponse[]>>
bulk(OperationInput[], BulkOptions, RequestOptions)
Avviso
Questa API è ora deprecata.
Use executeBulkOperations instead.
Bulk takes an array of Operations which are typed based on what the operation does. The choices are: Create, Upsert, Read, Replace, and Delete
Usage example:
import { CosmosClient, OperationInput } 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 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 container.items.bulk(operations);
Eseguire operazioni bulk sugli elementi.
function bulk(operations: OperationInput[], bulkOptions?: BulkOptions, options?: RequestOptions): Promise<BulkOperationResponse>
Parametri
- operations
Elenco di operazioni. Limite 100
- bulkOptions
- BulkOptions
Oggetto opzioni facoltativo per modificare il comportamento bulk. Passare { continueOnError: false } per interrompere l'esecuzione delle operazioni quando si verifica un errore. (Il valore predefinito è true)
- options
- RequestOptions
Utilizzato per modificare la richiesta.
Restituisce
Promise<BulkOperationResponse>
changeFeed(ChangeFeedOptions)
Avviso
Questa API è ora deprecata.
Use getChangeFeedIterator instead.
Creare un ChangeFeedIterator per scorrere le pagine delle modifiche
function changeFeed(changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<any>
Parametri
- changeFeedOptions
- ChangeFeedOptions
Restituisce
ChangeFeedIterator<any>
changeFeed(PartitionKey, ChangeFeedOptions)
Avviso
Questa API è ora deprecata.
Use getChangeFeedIterator instead.
Creare un ChangeFeedIterator per scorrere le pagine delle modifiche
Example
Leggere dall'inizio del feed di modifiche.
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>
Parametri
- partitionKey
- PartitionKey
- changeFeedOptions
- ChangeFeedOptions
Restituisce
ChangeFeedIterator<any>
changeFeed<T>(ChangeFeedOptions)
Avviso
Questa API è ora deprecata.
Use getChangeFeedIterator instead.
Creare un ChangeFeedIterator per scorrere le pagine delle modifiche
function changeFeed<T>(changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<T>
Parametri
- changeFeedOptions
- ChangeFeedOptions
Restituisce
changeFeed<T>(PartitionKey, ChangeFeedOptions)
Avviso
Questa API è ora deprecata.
Use getChangeFeedIterator instead.
Creare un ChangeFeedIterator per scorrere le pagine delle modifiche
function changeFeed<T>(partitionKey: PartitionKey, changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<T>
Parametri
- partitionKey
- PartitionKey
- changeFeedOptions
- ChangeFeedOptions
Restituisce
create<T>(T, RequestOptions)
Creare un elemento.
Qualsiasi tipo specificato, T, non viene necessariamente applicato dall'SDK. È possibile ottenere più o meno proprietà ed è necessario applicare la logica.
Non esiste uno schema impostato per gli elementi JSON. Possono contenere un numero qualsiasi di proprietà personalizzate.
Example
Creare 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 { resource: createdItem } = await container.items.create({
id: "<item id>",
properties: {},
});
function create<T>(body: T, options?: RequestOptions): Promise<ItemResponse<T>>
Parametri
- body
-
T
Rappresenta il corpo dell'elemento. Può contenere un numero qualsiasi di proprietà definite dall'utente.
- options
- RequestOptions
Usato per modificare la richiesta, ad esempio specificando la chiave di partizione.
Restituisce
Promise<ItemResponse<T>>
executeBulkOperations(OperationInput[], RequestOptions)
Eseguire operazioni bulk sugli elementi.
Example
import { CosmosClient, OperationInput } 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 operations: OperationInput[] = [
{
operationType: "Create",
resourceBody: { id: "doc1", name: "sample", key: "A" },
},
{
operationType: "Upsert",
partitionKey: "A",
resourceBody: { id: "doc2", name: "other", key: "A" },
},
];
await container.items.executeBulkOperations(operations);
function executeBulkOperations(operations: OperationInput[], options?: RequestOptions): Promise<BulkOperationResult[]>
Parametri
- operations
Elenco delle operazioni
- options
- RequestOptions
utilizzato per modificare la richiesta
Restituisce
Promise<BulkOperationResult[]>
elenco dei risultati delle operazioni corrispondenti alle operazioni
getChangeFeedIterator<T>(ChangeFeedIteratorOptions)
Restituisce un iteratore per scorrere le pagine di modifiche. L'iteratore restituito può essere usato per recuperare le modifiche per una singola chiave di partizione, un intervallo di feed o un intero contenitore.
Example
import {
CosmosClient,
PartitionKeyDefinitionVersion,
PartitionKeyKind,
ChangeFeedStartFrom,
} 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 Database",
partitionKey: {
paths: ["/name", "/address/zip"],
version: PartitionKeyDefinitionVersion.V2,
kind: PartitionKeyKind.MultiHash,
},
};
const { container } = await database.containers.createIfNotExists(containerDefinition);
const partitionKey = "some-partition-Key-value";
const options = {
changeFeedStartFrom: ChangeFeedStartFrom.Beginning(partitionKey),
};
const iterator = container.items.getChangeFeedIterator(options);
while (iterator.hasMoreResults) {
const response = await iterator.readNext();
// process this response
}
function getChangeFeedIterator<T>(changeFeedIteratorOptions?: ChangeFeedIteratorOptions): ChangeFeedPullModelIterator<T>
Parametri
- changeFeedIteratorOptions
- ChangeFeedIteratorOptions
Restituisce
getEncryptionQueryIterator(EncryptionQueryBuilder, FeedOptions)
Esegue una query su tutti gli elementi in un contenitore crittografato.
Example
Legge tutti gli elementi nella matrice.
import { CosmosClient, EncryptionQueryBuilder } 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 queryBuilder = new EncryptionQueryBuilder(
`SELECT firstname FROM Families f WHERE f.lastName = @lastName`,
);
queryBuilder.addParameter("@lastName", "Hendricks", "/lastname");
const queryIterator = await container.items.getEncryptionQueryIterator(queryBuilder);
const { resources: items } = await queryIterator.fetchAll();
function getEncryptionQueryIterator(queryBuilder: EncryptionQueryBuilder, options?: FeedOptions): Promise<QueryIterator<ItemDefinition>>
Parametri
- queryBuilder
- EncryptionQueryBuilder
Configurazione della query per l'operazione. Per altre informazioni su come creare una query sulle proprietà crittografate, vedi SqlQuerySpec .
- options
- FeedOptions
Usato per modificare la richiesta, ad esempio specificando la chiave di partizione.
Restituisce
Promise<QueryIterator<ItemDefinition>>
query(string | SqlQuerySpec, FeedOptions)
Esegue query su tutti gli elementi.
Example
Legge tutti gli elementi 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 { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });
const querySpec: SqlQuerySpec = {
query: `SELECT * FROM Families f WHERE f.lastName = @lastName`,
parameters: [{ name: "@lastName", value: "Hendricks" }],
};
const { resources: items } = await container.items.query(querySpec).fetchAll();
function query(query: string | SqlQuerySpec, options?: FeedOptions): QueryIterator<any>
Parametri
- query
-
string | SqlQuerySpec
Configurazione della query per l'operazione. Per altre informazioni su come configurare una query, vedi SqlQuerySpec .
- options
- FeedOptions
Usato per modificare la richiesta, ad esempio specificando la chiave di partizione.
Restituisce
QueryIterator<any>
query<T>(string | SqlQuerySpec, FeedOptions)
Esegue query su tutti gli elementi.
Example
Legge tutti gli elementi 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 { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });
const querySpec: SqlQuerySpec = {
query: `SELECT * FROM Families f WHERE f.lastName = @lastName`,
parameters: [{ name: "@lastName", value: "Hendricks" }],
};
const { resources: items } = await container.items.query(querySpec).fetchAll();
function query<T>(query: string | SqlQuerySpec, options?: FeedOptions): QueryIterator<T>
Parametri
- query
-
string | SqlQuerySpec
Configurazione della query per l'operazione. Per altre informazioni su come configurare una query, vedi SqlQuerySpec .
- options
- FeedOptions
Usato per modificare la richiesta, ad esempio specificando la chiave di partizione.
Restituisce
readAll(FeedOptions)
Legge tutti gli elementi.
Non esiste uno schema impostato per gli elementi JSON. Possono contenere un numero qualsiasi di proprietà personalizzate.
Example
Legge tutti gli elementi 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 { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });
const { resources: containerList } = await container.items.readAll().fetchAll();
function readAll(options?: FeedOptions): QueryIterator<ItemDefinition>
Parametri
- options
- FeedOptions
Usato per modificare la richiesta, ad esempio specificando la chiave di partizione.
Restituisce
readAll<T>(FeedOptions)
Legge tutti gli elementi.
Qualsiasi tipo specificato, T, non viene necessariamente applicato dall'SDK. È possibile ottenere più o meno proprietà ed è necessario applicare la logica.
Non esiste uno schema impostato per gli elementi JSON. Possono contenere un numero qualsiasi di proprietà personalizzate.
Example
Legge tutti gli elementi 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 { database } = await client.databases.createIfNotExists({ id: "Test Database" });
const { container } = await database.containers.createIfNotExists({ id: "Test Container" });
const { resources: containerList } = await container.items.readAll().fetchAll();
function readAll<T>(options?: FeedOptions): QueryIterator<T>
Parametri
- options
- FeedOptions
Usato per modificare la richiesta, ad esempio specificando la chiave di partizione.
Restituisce
readChangeFeed(ChangeFeedOptions)
Avviso
Questa API è ora deprecata.
Use getChangeFeedIterator instead.
Creare un ChangeFeedIterator per scorrere le pagine delle modifiche
function readChangeFeed(changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<any>
Parametri
- changeFeedOptions
- ChangeFeedOptions
Restituisce
ChangeFeedIterator<any>
readChangeFeed(PartitionKey, ChangeFeedOptions)
Avviso
Questa API è ora deprecata.
Use getChangeFeedIterator instead.
Creare un ChangeFeedIterator per scorrere le pagine delle modifiche
Example
Leggere dall'inizio del feed di modifiche.
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>
Parametri
- partitionKey
- PartitionKey
- changeFeedOptions
- ChangeFeedOptions
Restituisce
ChangeFeedIterator<any>
readChangeFeed<T>(ChangeFeedOptions)
Avviso
Questa API è ora deprecata.
Use getChangeFeedIterator instead.
Creare un ChangeFeedIterator per scorrere le pagine delle modifiche
function readChangeFeed<T>(changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<T>
Parametri
- changeFeedOptions
- ChangeFeedOptions
Restituisce
readChangeFeed<T>(PartitionKey, ChangeFeedOptions)
Avviso
Questa API è ora deprecata.
Use getChangeFeedIterator instead.
Creare un ChangeFeedIterator per scorrere le pagine delle modifiche
function readChangeFeed<T>(partitionKey: PartitionKey, changeFeedOptions?: ChangeFeedOptions): ChangeFeedIterator<T>
Parametri
- partitionKey
- PartitionKey
- changeFeedOptions
- ChangeFeedOptions
Restituisce
upsert(unknown, RequestOptions)
Upsert di un elemento.
Non esiste uno schema impostato per gli elementi JSON. Possono contenere un numero qualsiasi di proprietà personalizzate.
function upsert(body: unknown, options?: RequestOptions): Promise<ItemResponse<ItemDefinition>>
Parametri
- body
-
unknown
Rappresenta il corpo dell'elemento. Può contenere un numero qualsiasi di proprietà definite dall'utente.
- options
- RequestOptions
Usato per modificare la richiesta, ad esempio specificando la chiave di partizione.
Restituisce
Promise<ItemResponse<ItemDefinition>>
upsert<T>(T, RequestOptions)
Upsert di un elemento.
Qualsiasi tipo specificato, T, non viene necessariamente applicato dall'SDK. È possibile ottenere più o meno proprietà ed è necessario applicare la logica.
Non esiste uno schema impostato per gli elementi JSON. Possono contenere un numero qualsiasi di proprietà personalizzate.
Example
Upsert di 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 { resource: createdItem1 } = await container.items.create({
id: "<item id 1>",
properties: {},
});
const { resource: upsertItem1 } = await container.items.upsert({
id: "<item id 1>",
updated_properties: {},
});
const { resource: upsertItem2 } = await container.items.upsert({
id: "<item id 2>",
properties: {},
});
function upsert<T>(body: T, options?: RequestOptions): Promise<ItemResponse<T>>
Parametri
- body
-
T
Rappresenta il corpo dell'elemento. Può contenere un numero qualsiasi di proprietà definite dall'utente.
- options
- RequestOptions
Usato per modificare la richiesta, ad esempio specificando la chiave di partizione.
Restituisce
Promise<ItemResponse<T>>