共用方式為


建立預存程式

作業 Create Stored Procedure 會在集合中建立新的預存程式。

要求

方法 要求 URI Description
POST HTTPs://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/sprocs {databaseaccount} 是您訂用帳戶下建立的 Azure Cosmos DB 帳戶名稱。 {db-id} 值是建立預存程式之資料庫的使用者產生名稱/識別碼,而不是系統產生的識別碼 (rid) 。 {coll-id} 值是建立預存程式之集合的名稱。

標題

如需所有 Azure Cosmos DB 要求所使用的標頭,請參閱常見的 Azure Cosmos DB REST 要求標頭

主體

屬性 必要 類型 描述
id 必要 String 使用者為預存程式產生唯一的名稱。 沒有兩個預存程式可以有相同的識別碼。 它是不能超過 255 個字元的字串。
body 必要 String 預存程式的主體。
{  
    "body": "function () {\r\n    var context = getContext();\r\n    var response = context.getResponse();\r\n\r\n    response.setBody(\"Hello, World\");\r\n}",  
    "id": "sproc_1"  
}  
  

回應

標題

如需所有 Azure Cosmos DB 回應所傳回的標頭,請參閱 常見的 Azure Cosmos DB REST 回應標頭

狀態碼

下表列出此作業所傳回的常見狀態碼。 如需狀態碼的完整清單,請參閱 HTTP 狀態碼

HTTP 狀態碼 Description
201 Created 作業成功。
400 不正確的要求 JSON 內文無效。 檢查是否缺少大括號或引號。
409 衝突 現有預存程式已採用為新預存程式提供的識別碼。

主體

屬性 Description
_擺脫 它是系統產生的屬性。 資源識別碼 (_rid) 是資源模型上每個資源堆疊的階層式唯一識別碼。 供內部進行放置和導覽文件資源時使用。
_Ts 它是系統產生的屬性。 代表資源的上次更新時間戳記。 值為時間戳記。
_自我 它是系統產生的屬性。 代表資源的唯一可定址 URI。
_Etag 這是系統產生的屬性,代表開放式並行控制所需的資源 etag
{  
    "body": "function () {\r\n    var context = getContext();\r\n    var response = context.getResponse();\r\n\r\n    response.setBody(\"Hello, World\");\r\n}",  
    "id": "sproc_1",  
    "_rid": "Sl8fALN4sw4CAAAAAAAAgA==",  
    "_ts": 1449680569,  
    "_self": "dbs\/Sl8fAA==\/colls\/Sl8fALN4sw4=\/sprocs\/Sl8fALN4sw4CAAAAAAAAgA==\/",  
    "_etag": "\"0600ffe0-0000-0000-0000-56685eb90000\""  
}  
  

範例

POST https://contosomarketing.documents.azure.com/dbs/volcanodb/colls/volcano1/sprocs HTTP/1.1  
x-ms-session-token: 28  
x-ms-date: Wed, 09 Dec 2015 17:02:48 GMT  
authorization: type%3dmaster%26ver%3d1.0%26sig%3d1puCtXMwS2AOFwQ19Y33nT9LspnXXZIFDnJnh%2b%2bOCKk%3d  
Cache-Control: no-cache  
User-Agent: contoso/1.0  
x-ms-version: 2015-08-06  
Accept: application/json  
Host: contosomarketing.documents.azure.com  
Cookie: x-ms-session-token=28  
Content-Length: 171  
Expect: 100-continue  
Connection: Keep-Alive  
  
{  
    "body": "function () {\r\n    var context = getContext();\r\n    var response = context.getResponse();\r\n\r\n    response.setBody(\"Hello, World\");\r\n}",  
    "id": "sproc_1"  
}  
  
HTTP/1.1 201 Created  
Cache-Control: no-store, no-cache  
Pragma: no-cache  
Content-Type: application/json  
Server: Microsoft-HTTPAPI/2.0  
Strict-Transport-Security: max-age=31536000  
x-ms-last-state-change-utc: Sun, 29 Nov 2015 19:20:18.154 GMT  
etag: "0600ffe0-0000-0000-0000-56685eb90000"  
x-ms-resource-quota: storedProcedures=25;  
x-ms-resource-usage: storedProcedures=1;  
x-ms-schemaversion: 1.1  
x-ms-alt-content-path: dbs/volcanodb/colls/volcano1  
x-ms-content-path: Sl8fALN4sw4=  
x-ms-quorum-acked-lsn: 28  
x-ms-session-token: 29  
x-ms-current-write-quorum: 3  
x-ms-current-replica-set-size: 4  
x-ms-request-charge: 4.95  
x-ms-serviceversion: version=1.5.57.3  
x-ms-activity-id: 6540fd9a-2428-49d8-b14d-31e7f0af7175  
x-ms-gatewayversion: version=1.5.57.3  
Date: Wed, 09 Dec 2015 17:02:48 GMT  
Content-Length: 354  
  
{  
    "body": "function () {\r\n    var context = getContext();\r\n    var response = context.getResponse();\r\n\r\n    response.setBody(\"Hello, World\");\r\n}",  
    "id": "sproc_1",  
    "_rid": "Sl8fALN4sw4CAAAAAAAAgA==",  
    "_ts": 1449680569,  
    "_self": "dbs\/Sl8fAA==\/colls\/Sl8fALN4sw4=\/sprocs\/Sl8fALN4sw4CAAAAAAAAgA==\/",  
    "_etag": "\"0600ffe0-0000-0000-0000-56685eb90000\""  
}  
  

另請參閱