Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A gyűjtemény tetszőleges JSON-dokumentumait úgy kérdezheti le, ha egy bejegyzést végez a Cosmos DB "colls" erőforrásán. A Cosmos DB SQL-szintaxisa hierarchikus, relációs és térbeli lekérdezési operátorokat biztosít a dokumentumok lekérdezéséhez és kivetítéséhez. Az erőforrások Cosmos DB-ben való lekérdezésével kapcsolatos további információkért lásd: Erőforrások lekérdezése.
Kérés
| Metódus | Kérés URI-ja | Description |
|---|---|---|
| Post | https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/docs | vegye figyelembe, hogy a(z) {databaseaccount} az előfizetése alatt létrehozott Cosmos DB-fiók neve. A {db-id} érték az adatbázis felhasználó által létrehozott neve/azonosítója, nem pedig a rendszer által generált azonosító (rid). A(z) {coll-id} érték a gyűjtemény neve. |
Fejlécek
Az összes Cosmos DB-kérés által használt fejlécekhez tekintse meg az Azure Cosmos DB REST-kérések gyakori fejléceit .
| Fejléc | Kötelező | Típus | Description |
|---|---|---|---|
| x-ms-documentdb-isquery | Kötelező | Logikai | Igaz értékre kell állítani, amely azt jelzi, hogy a POST lekérdezés. |
| Tartalomtípus | Kötelező | Sztring | Egy sztring, amelyet application/query+json értékre kell állítani. |
| x-ms-max-item-count | Választható | Szám | Egész szám, amely az egy oldalon visszaadandó elemek maximális számát jelzi. A lekérdezések oldalanként legfeljebb a megadott számú elemet adják vissza, de a gyűjtemény teljesítményszintje és méretük alapján kevesebb is lehet. A -1 x-ms-max-item-count értéke megadhatja, hogy a szolgáltatás határozza meg az optimális elemszámot. Ez az x-ms-max-item-count ajánlott konfigurációs értéke. |
| x-ms-continuation | Választható | Sztring | A lekérdezésekhez és az olvasási hírcsatorna-műveletekhez visszaadott sztringtoken, ha több eredményt kell olvasni. Az ügyfelek úgy kérhetik le az eredmények következő oldalát, hogy újra beküldik a kérést az x-ms-continuation kérelem fejlécének erre az értékre van állítva. |
| x-ms-documentdb-query-enablecrosspartition | Választható | Logikai | Ha a gyűjtemény particionálva van, ezt True (Igaz) értékre kell állítani, hogy több partíción is lehetővé tegye a végrehajtást. Az egyetlen partíciókulcsra vagy egypartíciós gyűjteményekre szűrő lekérdezéseknek nem kell beállítaniuk a fejlécet. |
| x-ms-consistency-level | Választható | Sztring | Ez a konzisztenciaszint felülbírálása. Az érvényes értékek a következők: Erős, Kötött, Munkamenet vagy Végleges (a legerősebbtől a leggyengébbig). A felülbírálásnak meg kell egyeznie vagy gyengébbnek kell lennie, mint a fiók konfigurált konzisztenciaszintje. |
| x-ms-session-token | Választható | Sztring | Munkamenetszintű konzisztenciával használt sztringtoken. Az ügyfeleknek a munkamenet-konzisztencia olvasási kérelmei során meg kell jelenniük a fejléc legfrissebb olvasási értékének. |
Fontos
Content-Type A fejlécben NE szerepeljen a karakterkészlet (például "application/query+json; charset-utf-8"). A fejlécnek pontosan a fent látható módon kell lennie.
Törzs
| Tulajdonság | Kötelező | Típus | Description |
|---|---|---|---|
| Lekérdezés | Kötelező | Sztring | Az SQL-lekérdezés szövegét tartalmazza. A nyelvhelyességről az SQL Grammar című témakörben olvashat. |
| paraméterek | Kötelező | Tömb | A lekérdezés paraméterértékeinek tömbje. |
{
"query": "SELECT * FROM Families f WHERE f.id = @id AND f.Address.City = @city",
"parameters": [
{
"name": "@id",
"value": "AndersenFamily"
},
{
"name": "@city",
"value": "Seattle"
}
]
}
Reagálás
A kért lekérdezésnek megfelelő dokumentumtömböt ad vissza.
Fejlécek
Az összes Cosmos DB-válasz által visszaadott fejléceket az Azure Cosmos DB REST-válaszfejlécei között tekintheti meg. A fontos válaszfejlécek a következők:
| Tulajdonság | Típus | Description |
|---|---|---|
| x-ms-continuation | Sztring | Egy jogkivonatot ad vissza, amely további eredményeket szeretne lekérni a műveletből. Az ügyfél újra elküldheti a kérést az x-ms-continuation kérelem fejlécével, amely tartalmazza ezt az értéket a végrehajtás folytatásához. |
| x-ms-request-charge | Szám | A művelet által felhasznált kérelemegységek száma. |
Állapotkódok
Az alábbi táblázat a művelet által visszaadott gyakori állapotkódokat sorolja fel. Az állapotkódok teljes listáját lásd: HTTP-állapotkódok.
| HTTP-állapotkód | Leírás |
|---|---|
| 200 OK | A művelet sikeres volt. |
| 400 – Hibás kérés | A megadott kérés helytelen SQL-szintaxissal lett megadva, vagy hiányoznak a szükséges fejlécek. |
Törzs
| Tulajdonság | Leírás |
|---|---|
| _Megszabadulni | Ez a rendszer által létrehozott erőforrás-azonosító ahhoz a gyűjteményhez, amelyben a dokumentumok találhatók. |
| _Számít | Ez a listaművelet által visszaadott dokumentumok száma. |
| Dokumentumok | A művelet által visszaadott dokumentumok tömbje. |
A dokumentum tulajdonságai
| Tulajdonság | Leírás |
|---|---|
| id | Ez az a név, amely azonosítja a dokumentumot, vagyis egyetlen két dokumentum sem oszthatja meg ugyanazt az azonosítót. Az azonosító nem haladhatja meg a 255 karaktert. |
| <egyéni> | Bármely felhasználó által definiált JSON. |
| _Megszabadulni | Ez egy rendszer által létrehozott tulajdonság. Az erőforrás-azonosító (_rid) egy egyedi azonosító, amely szintén hierarchikus az erőforrásmodell erőforrás-vermében. A rendszer a dokumentum típusú erőforrás elhelyezésére és navigálására használja. |
| _Ts | Ez egy rendszer által létrehozott tulajdonság. Meghatározza az erőforrás utolsó frissített időbélyegét. Az érték egy időbélyeg. |
| _Önálló | Ez egy rendszer által létrehozott tulajdonság. Ez az erőforrás egyedi címezhető URI-ja. |
| _Etag | Ez egy rendszer által létrehozott tulajdonság, amely meghatározza az optimista egyidejűség-vezérléshez szükséges erőforrás-etaget . |
| _Mellékletek | Ez egy rendszer által létrehozott tulajdonság, amely megadja a mellékletek erőforrásának címezhető elérési útját. |
{
"_rid": "1KtjAImkcgw=",
"Documents": [
{
"id": "AndersenFamily",
"LastName": "Andersen",
"Parents": [
{
"FamilyName": null,
"FirstName": "Thomas"
},
{
"FamilyName": null,
"FirstName": "Mary Kay"
}
],
"Children": [
{
"FamilyName": null,
"FirstName": "Henriette Thaulow",
"Gender": "female",
"Grade": 5,
"Pets": [
{
"GivenName": "Fluffy"
}
]
}
],
"Address": {
"State": "WA",
"County": "King",
"City": "Seattle"
},
"IsRegistered": true,
"_rid": "1KtjAImkcgwBAAAAAAAAAA==",
"_self": "dbs/1KtjAA==/colls/1KtjAImkcgw=/docs/1KtjAImkcgwBAAAAAAAAAA==/",
"_etag": "\"00003200-0000-0000-0000-56f9e84d0000\"",
"_ts": 1459218509,
"_attachments": "attachments/"
}
],
"_count": 1
}
Példa
POST https://querydemo.documents.azure.com/dbs/1KtjAA==/colls/1KtjAImkcgw=/docs HTTP/1.1
x-ms-continuation:
x-ms-documentdb-isquery: True
x-ms-documentdb-query-enablecrosspartition: True
x-ms-date: Tue, 29 Mar 2016 02:28:32 GMT
authorization: type%3dmaster%26ver%3d1.0%26sig%3drOlOhFh9plfC0ggZfmHtS3XepVitiIRsd6i1d9PnuW8%3d
Cache-Control: no-cache
User-Agent: Microsoft.Azure.Documents.Client/1.6.0.0
x-ms-version: 2015-12-16
Accept: application/json
Content-Type: application/query+json
Host: querydemo.documents.azure.com
Cookie: x-ms-session-token#0=604; x-ms-session-token=604
Content-Length: 170
Expect: 100-continue
{
"query": "SELECT * FROM Families f WHERE f.id = @id AND f.Address.City = @city",
"parameters": [
{
"name": "@id",
"value": "AndersenFamily"
},
{
"name": "@city",
"value": "Seattle"
}
]
}
HTTP/1.1 201 Created
Cache-Control: no-store, no-cache
Pragma: no-cache
Transfer-Encoding: chunked
Content-Type: application/json
Server: Microsoft-HTTPAPI/2.0
Strict-Transport-Security: max-age=31536000
x-ms-last-state-change-utc: Fri, 25 Mar 2016 22:39:02.501 GMT
etag: "00003200-0000-0000-0000-56f9e84d0000"
x-ms-resource-quota: documentSize=10240;documentsSize=10485760;collectionSize=10485760;
x-ms-resource-usage: documentSize=0;documentsSize=1;collectionSize=1;
x-ms-schemaversion: 1.1
x-ms-alt-content-path: dbs/testdb/colls/testcoll
x-ms-quorum-acked-lsn: 602
x-ms-current-write-quorum: 3
x-ms-current-replica-set-size: 4
x-ms-request-charge: 12.38
x-ms-serviceversion: version=1.6.52.5
x-ms-activity-id: 856acd38-320d-47df-ab6f-9761bb987668
x-ms-session-token: 0:603
Set-Cookie: x-ms-session-token#0=603; Domain=querydemo.documents.azure.com; Path=/dbs/1KtjAA==/colls/1KtjAImkcgw=
Set-Cookie: x-ms-session-token=603; Domain=querydemo.documents.azure.com; Path=/dbs/1KtjAA==/colls/1KtjAImkcgw=
x-ms-gatewayversion: version=1.6.52.5
Date: Tue, 29 Mar 2016 02:28:30 GMT
{
"id": "AndersenFamily",
"LastName": "Andersen",
"Parents": [
{
"FamilyName": null,
"FirstName": "Thomas"
},
{
"FamilyName": null,
"FirstName": "Mary Kay"
}
],
"Children": [
{
"FamilyName": null,
"FirstName": "Henriette Thaulow",
"Gender": "female",
"Grade": 5,
"Pets": [
{
"GivenName": "Fluffy"
}
]
}
],
"Address": {
"State": "WA",
"County": "King",
"City": "Seattle"
},
"IsRegistered": true,
"_rid": "1KtjAImkcgwBAAAAAAAAAA==",
"_self": "dbs/1KtjAA==/colls/1KtjAImkcgw=/docs/1KtjAImkcgwBAAAAAAAAAA==/",
"_etag": "\"00003200-0000-0000-0000-56f9e84d0000\"",
"_ts": 1459218509,
"_attachments": "attachments/"
}