Skapa en container i Azure Cosmos DB för NoSQL med JavaScript
GÄLLER FÖR: NoSQL
Containrar i Azure Cosmos DB-lagringsuppsättningar med objekt. Innan du kan skapa, fråga eller hantera objekt måste du först skapa en container.
Namnge en container
I Azure Cosmos DB motsvarar en container en tabell i en relationsdatabas. När du skapar en container utgör containernamnet ett segment av den URI som används för att komma åt containerresursen och eventuella underordnade objekt.
När den har skapats är URI:n för en container i det här formatet:
https://<cosmos-account-name>.documents.azure.com/dbs/<database-name>/colls/<container-name>
Skapa en container
Hämta ett databasobjekt och skapa sedan en container:
- createIfNotExists – Skapar en container om den inte finns. Om den finns returnerar du containern.
- create – Skapar en container. Om den finns returnerar du felstatusKod.
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 är en HTTP-svarskod. Ett lyckat svar är inom intervallet 200–299.
Få åtkomst till en container
En container nås från containerobjektet antingen direkt eller länkat från CosmosClient- eller Database-objekten.
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();
Åtkomst efter objekt:
- Containrar (plural): Skapa eller fråga containrar.
- Container (singular): Ta bort container, arbeta med objekt.
Ta bort en container
När du har hämtat containerobjektet kan du använda containerobjektet för att ta bort containern:
const { statusCode } = await container.delete();
StatusCode är en HTTP-svarskod. Ett lyckat svar är inom intervallet 200–299.
Nästa steg
Nu när du har skapat en container använder du nästa guide för att skapa objekt.