Ersätt ett dokument

Azure Cosmos DB är en globalt distribuerad databas för flera datamodeller som har stöd för flera API:er. Den här artikeln beskriver SQL-API:et för Azure Cosmos DB.

Åtgärden Replace Document ersätter hela innehållet i ett dokument.

Förfrågan

Metod URI för förfrågan Description
PUT https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/docs/{doc-id} Observera att {databaseaccount} är namnet på cosmos DB-kontot som skapades under din prenumeration. Värdet {db-id} är det användargenererade namnet/ID:t för databasen, inte det systemgenererade ID:t (rid). Värdet {coll-id} är namnet på samlingen. Värdet {doc-id} är ID:t för dokumentet som ska ersättas.

Sidhuvuden

Se Vanliga REST-begärandehuvuden för Azure Cosmos DB för rubriker som används av alla Cosmos DB-begäranden. De viktiga rubrikerna för den här begäran är:

Huvud Krävs Typ Description
x-ms-indexing-directive Valfritt Sträng De godkända värdena är Inkludera eller Exkludera. Inkludera innehåller dokumentet i indexeringssökvägen medan Exkludera utelämnar dokumentet från indexering.
x-ms-documentdb-partitionkey Valfritt Matris Partitionsnyckelvärdet för dokumentet som ska tas bort. Krävs om och måste anges endast om samlingen skapas med en partitionKey-definition .
If-Match Valfritt Sträng Används för att villkora åtgärden för optimistisk samtidighet. Dokumentet uppdateras alltså endast om den angivna etag-adressen matchar den aktuella versionen i databasen. Värdet ska anges till etag-värdet för resursen.

Brödtext

Egenskap Krävs Typ Description
id Obligatorisk Sträng Det är en användaruppsättningsbar egenskap. Det är ett unikt namn för att identifiera ett dokument, dvs. inga två dokument ska dela samma ID. ID:t får inte överstiga 255 tecken.
<anpassad> Obligatorisk JSON Användardefinierad JSON.
{  
  "id": "_SalesOrder5",  
  "AccountNumber": "NewUser01",  
  "PurchaseOrderNumber": "PO18009186470",  
  "OrderDate": "2016-03-29T02:03:07.3526153Z",  
  "Total": 5.95,  
  "_rid": "d9RzAJRFKgwEAAAAAAAAAA==",  
  "_self": "dbs/d9RzAA==/colls/d9RzAJRFKgw=/docs/d9RzAJRFKgwEAAAAAAAAAA==/",  
  "_etag": "\"0000de86-0000-0000-0000-56f9e25c0000\"",  
  "_ts": 1459216988,  
  "_attachments": "attachments/",  
  "shippedDate": "2016-03-29T02:03:07.4680723Z",  
  "foo": "bar"  
}  
  

Svarsåtgärder

Replace Document returnerar det uppdaterade dokumenttexten.

Sidhuvuden

Se Vanliga AZURE Cosmos DB REST-svarshuvuden för rubriker som returneras av alla Cosmos DB-svar. De viktiga svarshuvudena för Ersätt dokument är följande:

Huvud Typ Description
x-ms-request-charge Tal Antalet enheter för begäran som förbrukas av åtgärden.
x-ms-session-token Sträng En strängtoken som används med konsekvens på sessionsnivå. Klienter måste spara det här värdet och ange det för efterföljande läsbegäranden för sessionskonsekvens.

Statuskoder

I följande tabell visas vanliga statuskoder som returneras av den här åtgärden. En fullständig lista över statuskoder finns i HTTP-statuskoder.

HTTP-statuskod Beskrivning
200 Ok Åtgärden lyckades.
400 Felaktig begäran JSON-brödtexten är ogiltig. Kontrollera om det saknas klammerparenteser eller citattecken.
404 – Hittades inte Dokumentet finns inte längre, dvs. dokumentet har tagits bort.
409 – Konflikt ID:t för det nya dokumentet har tagits av ett befintligt dokument.
413 Entitet för stor Dokumentstorleken i begäran överskred den tillåtna dokumentstorleken i en begäran.

Brödtext

Egenskap Beskrivning
_Bli Det är en systemgenererad egenskap. Resurs-ID :t (_rid) är en unik identifierare som också är hierarkisk per resursstacken i resursmodellen. Den används internt för placering och navigering i dokumentresursen.
_Ts Det är en systemgenererad egenskap. Den anger resursens senast uppdaterade tidsstämpel. Värdet är en tidsstämpel.
_Själv Det är en systemgenererad egenskap. Det är den unika adresserbara URI:n för resursen.
_Etag Det är en systemgenererad egenskap som anger resursetaggen som krävs för optimistisk samtidighetskontroll.
_Bilagor Det är en systemgenererad egenskap som anger den adresserbara sökvägen för resursen för bifogade filer.
{  
  "id": "_SalesOrder5",  
  "AccountNumber": "NewUser01",  
  "PurchaseOrderNumber": "PO18009186470",  
  "OrderDate": "2016-03-29T02:03:07.3526153Z",  
  "Total": 5.95,  
  "_rid": "d9RzAJRFKgwEAAAAAAAAAA==",  
  "_self": "dbs/d9RzAA==/colls/d9RzAJRFKgw=/docs/d9RzAJRFKgwEAAAAAAAAAA==/",  
  "_etag": "\"0000df86-0000-0000-0000-56f9e25c0000\"",  
  "_ts": 1459216988,  
  "_attachments": "attachments/",  
  "shippedDate": "2016-03-29T02:03:07.4680723Z",  
  "foo": "bar"  
}  
  

Exempel

PUT https://querydemo.documents.azure.com/dbs/d9RzAA==/colls/d9RzAJRFKgw=/docs/d9RzAJRFKgwEAAAAAAAAAA== HTTP/1.1  
x-ms-documentdb-partitionkey: []  
x-ms-date: Tue, 29 Mar 2016 02:03:07 GMT  
authorization: type%3dmaster%26ver%3d1.0%26sig%3dP7DBdb6lXOnL55kXRL2L%2frt3PE8kybJCIT%2ffViY7UhU%3d  
Cache-Control: no-cache  
User-Agent: Microsoft.Azure.Documents.Client/1.6.0.0  
x-ms-version: 2015-12-16  
Accept: application/json  
Host: querydemo.documents.azure.com  
Cookie: x-ms-session-token#0=777; x-ms-session-token=777  
Content-Length: 405  
Expect: 100-continue  
  
{  
  "id": "_SalesOrder5",  
  "AccountNumber": "NewUser01",  
  "PurchaseOrderNumber": "PO18009186470",  
  "OrderDate": "2016-03-29T02:03:07.3526153Z",  
  "Total": 5.95,  
  "_rid": "d9RzAJRFKgwEAAAAAAAAAA==",  
  "_self": "dbs/d9RzAA==/colls/d9RzAJRFKgw=/docs/d9RzAJRFKgwEAAAAAAAAAA==/",  
  "_etag": "\"0000de86-0000-0000-0000-56f9e25c0000\"",  
  "_ts": 1459216988,  
  "_attachments": "attachments/",  
  "shippedDate": "2016-03-29T02:03:07.4680723Z",  
  "foo": "bar"  
}  
  
HTTP/1.1 200 Ok  
Cache-Control: no-store, no-cache  
Pragma: no-cache  
Transfer-Encoding: chunked  
Content-Type: application/json  
Content-Location: https://querydemo.documents.azure.com/dbs/d9RzAA==/colls/d9RzAJRFKgw=/docs/d9RzAJRFKgwEAAAAAAAAAA==  
Server: Microsoft-HTTPAPI/2.0  
Strict-Transport-Security: max-age=31536000  
x-ms-last-state-change-utc: Fri, 25 Mar 2016 21:55:47.482 GMT  
etag: "0000df86-0000-0000-0000-56f9e25c0000"  
x-ms-resource-quota: documentSize=10240;documentsSize=10485760;collectionSize=10485760;  
x-ms-resource-usage: documentSize=0;documentsSize=3;collectionSize=3;  
x-ms-schemaversion: 1.1  
x-ms-alt-content-path: dbs/testdb/colls/testcoll  
x-ms-quorum-acked-lsn: 777  
x-ms-current-write-quorum: 3  
x-ms-current-replica-set-size: 4  
x-ms-request-charge: 10.67  
x-ms-serviceversion: version=1.6.52.5  
x-ms-activity-id: a86cddb9-75f6-423e-8d42-f6b5ac817209  
x-ms-session-token: 0:778  
Set-Cookie: x-ms-session-token#0=778; Domain=querydemo.documents.azure.com; Path=/dbs/d9RzAA==/colls/d9RzAJRFKgw=  
Set-Cookie: x-ms-session-token=778; Domain=querydemo.documents.azure.com; Path=/dbs/d9RzAA==/colls/d9RzAJRFKgw=  
x-ms-gatewayversion: version=1.6.52.5  
Date: Tue, 29 Mar 2016 02:03:07 GMT  
  
{  
  "id": "_SalesOrder5",  
  "AccountNumber": "NewUser01",  
  "PurchaseOrderNumber": "PO18009186470",  
  "OrderDate": "2016-03-29T02:03:07.3526153Z",  
  "Total": 5.95,  
  "_rid": "d9RzAJRFKgwEAAAAAAAAAA==",  
  "_self": "dbs/d9RzAA==/colls/d9RzAJRFKgw=/docs/d9RzAJRFKgwEAAAAAAAAAA==/",  
  "_etag": "\"0000df86-0000-0000-0000-56f9e25c0000\"",  
  "_ts": 1459216988,  
  "_attachments": "attachments/",  
  "shippedDate": "2016-03-29T02:03:07.4680723Z",  
  "foo": "bar"  
}  
  

Se även