Container class
Operacje odczytu, zastępowania lub usuwania określonego istniejącego kontenera według identyfikatora.
Zobacz Containers na potrzeby tworzenia nowych kontenerów i odczytywania/wykonywania zapytań dotyczących wszystkich kontenerów; użyj .containers.
Uwaga: wszystkie te operacje tworzą wywołania względem stałego budżetu.
Należy zaprojektować system tak, aby te wywołania były skalowane podlinearnie z aplikacją.
Na przykład nie należy wywoływać container(id).read() przed każdym wywołaniem item.read(), aby upewnić się, że kontener istnieje; zrób to raz podczas uruchamiania aplikacji.
Właściwości
| conflicts | Operacje odczytu i wykonywania zapytań dotyczących konfliktów dla danego kontenera. Aby odczytać lub usunąć określony konflikt, użyj |
| database | |
| id | |
| items | Operacje tworzenia nowych elementów i odczytywania/wykonywania zapytań dotyczących wszystkich elementów Aby odczytywać, zastępować lub usuwać istniejący element, użyj polecenia Przykład Tworzenie nowego elementu
|
| scripts | Wszystkie operacje dla procedur składowanych, wyzwalaczy i funkcji zdefiniowanych przez użytkownika |
| url | Zwraca adres URL odwołania do zasobu. Służy do łączenia w obszarze Uprawnienia. |
Metody
| conflict(string, Partition |
Służy do odczytywania, zastępowania lub usuwania określonego istniejącego Konflikt według identyfikatora. Użyj Przykład
|
| delete(Request |
Usuwanie kontenera Przykład
|
| delete |
Usuń wszystkie dokumenty należą do kontenera dla podanej wartości klucza partycji Przykład
|
| get |
Przykład
|
| get |
Najpierw pobiera definicję klucza partycji, przeglądając pamięć podręczną w przeciwnym razie, odczytując kolekcję. |
| get |
|
| initialize |
Rozgrzewa pamięci podręczne związane z szyfrowaniem dla kontenera. Przykład
|
| item(string, Partition |
Służy do odczytywania, zastępowania lub usuwania określonego istniejącego elementu według identyfikatora. Użyj Przykład Zastępowanie elementu
|
| read(Request |
Odczytywanie definicji kontenera Przykład
|
| read |
Pobiera ofertę w kontenerze. Jeśli żadna z nich nie istnieje, zwraca element OfferResponse z niezdefiniowanym. Przykład
|
| read |
Pobiera zakresy kluczy partycji dla kontenera. Przykład
|
| replace(Container |
Zastępowanie definicji kontenera Przykład
|
Szczegóły właściwości
conflicts
Operacje odczytu i wykonywania zapytań dotyczących konfliktów dla danego kontenera.
Aby odczytać lub usunąć określony konflikt, użyj .conflict(id).
Conflicts conflicts
Wartość właściwości
database
id
id: string
Wartość właściwości
string
items
Operacje tworzenia nowych elementów i odczytywania/wykonywania zapytań dotyczących wszystkich elementów
Aby odczytywać, zastępować lub usuwać istniejący element, użyj polecenia .item(id).
Przykład
Tworzenie nowego elementu
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
Wartość właściwości
scripts
Wszystkie operacje dla procedur składowanych, wyzwalaczy i funkcji zdefiniowanych przez użytkownika
Scripts scripts
Wartość właściwości
url
Zwraca adres URL odwołania do zasobu. Służy do łączenia w obszarze Uprawnienia.
string url
Wartość właściwości
string
Szczegóły metody
conflict(string, PartitionKey)
Służy do odczytywania, zastępowania lub usuwania określonego istniejącego Konflikt według identyfikatora.
Użyj .conflicts do tworzenia nowych konfliktów lub wykonywania zapytań/odczytywania wszystkich konfliktów.
Przykład
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
Parametry
- id
-
string
Identyfikator Conflict.
- partitionKey
- PartitionKey
Zwraca
delete(RequestOptions)
Usuwanie kontenera
Przykład
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>
Parametry
- options
- RequestOptions
Zwraca
Promise<ContainerResponse>
deleteAllItemsForPartitionKey(PartitionKey, RequestOptions)
Usuń wszystkie dokumenty należą do kontenera dla podanej wartości klucza partycji
Przykład
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>
Parametry
- partitionKey
- PartitionKey
Wartość klucza partycji elementów do usunięcia
- options
- RequestOptions
Zwraca
Promise<ContainerResponse>
getFeedRanges()
Przykład
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[]>
Zwraca
Promise<readonly FeedRange[]>
wszystkie zakresy kanałów informacyjnych, dla których można pobrać kanał zmian.
getPartitionKeyDefinition()
Ostrzeżenie
Ten interfejs API jest już przestarzały.
This method has been renamed to readPartitionKeyDefinition.
Najpierw pobiera definicję klucza partycji, przeglądając pamięć podręczną w przeciwnym razie, odczytując kolekcję.
function getPartitionKeyDefinition(): Promise<ResourceResponse<PartitionKeyDefinition>>
Zwraca
Promise<ResourceResponse<PartitionKeyDefinition>>
getQueryPlan(string | SqlQuerySpec)
function getQueryPlan(query: string | SqlQuerySpec): Promise<Response<PartitionedQueryExecutionInfo>>
Parametry
- query
-
string | SqlQuerySpec
Zwraca
Promise<Response<PartitionedQueryExecutionInfo>>
initializeEncryption()
Rozgrzewa pamięci podręczne związane z szyfrowaniem dla kontenera.
Przykład
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>
Zwraca
Promise<void>
item(string, PartitionKey)
Służy do odczytywania, zastępowania lub usuwania określonego istniejącego elementu według identyfikatora.
Użyj .items do tworzenia nowych elementów lub wykonywania zapytań/odczytywania wszystkich elementów.
Przykład
Zastępowanie elementu
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
Parametry
- partitionKeyValue
- PartitionKey
Wartość klucza partycji Item
Zwraca
read(RequestOptions)
Odczytywanie definicji kontenera
Przykład
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>
Parametry
- options
- RequestOptions
Zwraca
Promise<ContainerResponse>
readOffer(RequestOptions)
Pobiera ofertę w kontenerze. Jeśli żadna z nich nie istnieje, zwraca element OfferResponse z niezdefiniowanym.
Przykład
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>
Parametry
- options
- RequestOptions
Zwraca
Promise<OfferResponse>
readPartitionKeyRanges(FeedOptions)
Pobiera zakresy kluczy partycji dla kontenera.
Przykład
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>
Parametry
- feedOptions
- FeedOptions
Opcje żądania.
Zwraca
QueryIterator<PartitionKeyRange>
Iterator zakresów kluczy partycji.
replace(ContainerDefinition, RequestOptions)
Zastępowanie definicji kontenera
Przykład
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>
Parametry
- body
- ContainerDefinition
- options
- RequestOptions
Zwraca
Promise<ContainerResponse>