Een container maken in Azure Cosmos DB for NoSQL met behulp van JavaScript
VAN TOEPASSING OP: NoSQL
Containers in Azure Cosmos DB-archiefsets met items. Voordat u items kunt maken, opvragen of beheren, moet u eerst een container maken.
Een container een naam opgeven
In Azure Cosmos DB is een container vergelijkbaar met een tabel in een relationele database. Wanneer u een container maakt, vormt de containernaam een segment van de URI die wordt gebruikt voor toegang tot de containerresource en eventuele onderliggende items.
Zodra de URI voor een container is gemaakt, heeft deze indeling:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/colls/<container-name>
Een container maken
Haal een databaseobject op en maak vervolgens een container:
- createIfNotExists - Hiermee maakt u een container als deze niet bestaat. Als deze bestaat, retourneert u de container.
- create - Hiermee maakt u een container. Als deze bestaat, retourneert u de foutstatusCode.
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 });
De statusCode is een HTTP-antwoordcode. Een geslaagd antwoord valt binnen het bereik van 200-299.
Toegang tot een container
Een container wordt geopend vanuit het containerobject rechtstreeks of gekoppeld vanuit de CosmosClient - of Database-objecten .
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();
Toegang per object:
- Containers (meervoud): Containers maken of opvragen.
- Container (singular): Container verwijderen, werken met items.
Een container verwijderen
Zodra u het containerobject hebt opgehaald, kunt u het containerobject gebruiken om de container te verwijderen :
const { statusCode } = await container.delete();
De statusCode is een HTTP-antwoordcode. Een geslaagd antwoord valt binnen het bereik van 200-299.
Volgende stappen
Nu u een container hebt gemaakt, gebruikt u de volgende handleiding om items te maken.