Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
SI APPLICA A: NoSQL
I contenitori in Azure Cosmos DB archiviano set di elementi. Prima di poter creare, eseguire query o gestire elementi, è necessario creare un contenitore.
Assegnare un nome a un contenitore
In Azure Cosmos DB, un contenitore è analogo a una tabella in un database relazionale. Quando si crea un contenitore, il nome del contenitore costituisce un segmento dell'URI usato per accedere alla risorsa del contenitore e a qualsiasi elemento figlio.
Dopo la creazione, l'URI per un contenitore si presenta nel seguente formato:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/colls/<container-name>
Creazione di un contenitore
Ottenere un oggetto Database, quindi creare un Contenitore:
- createIfNotExists: crea un contenitore, se non ne esiste già uno. Se esiste, restituisci il contenitore.
- create: crea un contenitore. Se esiste, restituisci il codice di errore statusCode.
const containerName = 'myContainer';
// Possible results:
// Create then return container
// Return existing container
// Return error statusCode
const { statusCode, container } = await database.containers.createIfNotExists({ id: containerName });
// Possible results:
// Create then return container
// Return error statusCode, reason includes container already exists
const { statusCode, container} = await database.containers.create({ id: containerName });
StatusCode è un codice di risposta HTTP. Una risposta con esito positivo viene restituita nell'intervallo 200-299.
Accedere a un contenitore
È possibile accedere a un contenitore direttamente dall'oggetto Container oppure un contenitore può essere concatenato dagli oggetti CosmosClient o Database.
const databaseName = 'myDb';
const containerName = 'myContainer';
// Chained - assumes database and container already exis
const { container, statusCode } = await client.database(databaseName).container(containerName);
// Direct - assumes database and container already exist
const { database, statusCode } = await client.database(databaseName);
if(statusCode < 400){
const { container, statusCode } = await database.container(containerName);
}
// Query - assumes database and container already exist
const { resources } = await client.database(databaseName).containers
.query({
query: `SELECT * FROM root r where r.id =@containerId`,
parameters: [
{
name: '@containerId',
value: containerName
}
]
})
.fetchAll();
Accesso per oggetto
- Container (plurale): crea o esegue query sui contenitori.
- Container (singolare): elimina un container, lavora con gli elementi.
Eliminare un contenitore
Dopo aver ottenuto l'oggetto Container, è possibile usare tale oggetto per eliminare il contenitore:
const { statusCode } = await container.delete();
StatusCode è un codice di risposta HTTP. Una risposta con esito positivo viene restituita nell'intervallo 200-299.
Passaggi successivi
Dopo aver creato un contenitore, usare la guida successiva per creare elementi.