ストアド プロシージャを置き換える

特定のストアド プロシージャ リソースに対して PUT 操作を実行すると、ストアド プロシージャ リソース全体が置き換えられます。 ID と本文を含むすべてのユーザー設定可能なプロパティは、本文で送信して置換を実行する必要があります。

Request

Method 要求 URI 説明
PUT https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/sprocs/{sproc-name} {databaseaccount} は、サブスクリプションの下に作成された Azure Cosmos DB アカウントの名前です。 {db-id} 値は、システム生成 ID (rid) ではなく、ストアド プロシージャが置き換えられるデータベースのユーザー生成名/ID です。 {coll-id} 値は、ストアド プロシージャが置き換えられるコレクションの名前です。 {sproc-name} 値は、置換するストアド プロシージャの名前です。

ヘッダー

すべての Cosmos DB 要求 で使用されるヘッダーについては、「共通の Azure Cosmos DB REST 要求ヘッダー」を参照してください。

Body

プロパティ 必須 Type 説明
id 必須 String ユーザーがストアド プロシージャの一意の名前を生成しました。 同じ ID を持つストアド プロシージャは 2 つありません。 255 文字以下の文字列です。
body 必須 String ストアド プロシージャの本文。
{  
    "body": "function (personToGreet) {\r\n    var context = getContext();\r\n    var response = context.getResponse();\r\n\r\n    response.setBody(\"Hello, \" + personToGreet);\r\n}",  
    "id": "sproc_hello_world"  
}  
  

[応答]

ヘッダー

すべての Cosmos DB 応答によって返されるヘッダーについては、「 共通の Azure Cosmos DB REST 応答ヘッダー 」を参照してください。

状態コード

次の表に、この操作で返される一般的なステータス コードを示します。 状態コードの完全な一覧については、「 HTTP 状態コード」を参照してください。

HTTP 状態コード 説明
200 Ok 置換操作は成功しました。
400 Bad Request JSON の本文が無効です。 中かっこや引用符の不足がないか確認してください。
404 見つかりません 置き換えられるストアド プロシージャはリソースではなく、つまりストアド プロシージャが削除されました。
409 競合 ストアド プロシージャに指定された ID は、既存のストアド プロシージャによって取得されています。

Body

プロパティ Description
_解消 これは、システムによって生成されるプロパティです。 リソース ID (_rid) は、リソース モデルのリソース スタックごとに階層化される一意識別子です。 アクセス許可リソースの配置およびナビゲーションのために内部的に使用されます。
_Ts これは、システムによって生成されるプロパティです。 リソースの最終更新タイムスタンプを示します。 値は、タイムスタンプです。
_自己 これは、システムによって生成されるプロパティです。 リソースの一意のアドレス指定が可能な URI です。
_Etag これは、オプティミスティック コンカレンシー制御に必要なリソース etag を表すシステム生成プロパティです。
{  
    "body": "function (personToGreet) {\r\n    var context = getContext();\r\n    var response = context.getResponse();\r\n\r\n    response.setBody(\"Hello, \" + personToGreet);\r\n}",  
    "id": "sproc_hello_world",  
    "_rid": "Sl8fALN4sw4DAAAAAAAAgA==",  
    "_ts": 1449684031,  
    "_self": "dbs\/Sl8fAA==\/colls\/Sl8fALN4sw4=\/sprocs\/Sl8fALN4sw4DAAAAAAAAgA==\/",  
    "_etag": "\"0600b5e2-0000-0000-0000-56686c3f0000\""  
}  
  

PUT https://contosomarketing.documents.azure.com/dbs/volcanodb/colls/volcano1/sprocs/sproc_hello_world HTTP/1.1  
x-ms-session-token: 36  
x-ms-date: Wed, 09 Dec 2015 18:00:31 GMT  
authorization: type%3dmaster%26ver%3d1.0%26sig%3d7G0d%2b6neXwXcfD36WU4lUD97Gk7cgAbrs3iaTKgfd%2bM%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=36  
Content-Length: 371  
Expect: 100-continue  
Connection: Keep-Alive  
  
{  
    "body": "function (personToGreet) {\r\n    var context = getContext();\r\n    var response = context.getResponse();\r\n\r\n    response.setBody(\"Hello, \" + personToGreet);\r\n}",  
    "id": "sproc_hello_world"  
}  
  
HTTP/1.1 200 Ok  
Cache-Control: no-store, no-cache  
Pragma: no-cache  
Content-Type: application/json  
Content-Location: https://contosomarketing.documents.azure.com/dbs/volcanodb/colls/volcano1/sprocs/sproc_hello_world  
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: "0600b5e2-0000-0000-0000-56686c3f0000"  
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: 36  
x-ms-session-token: 37  
x-ms-current-write-quorum: 3  
x-ms-current-replica-set-size: 4  
x-ms-request-charge: 9.9  
x-ms-serviceversion: version=1.5.57.3  
x-ms-activity-id: 1c4f917f-c34d-41c2-9874-851f033696b2  
Set-Cookie: x-ms-session-token=37; Domain=contosomarketing.documents.azure.com; Path=/dbs/volcanodb/colls/volcano1  
x-ms-gatewayversion: version=1.5.57.3  
Date: Wed, 09 Dec 2015 18:00:32 GMT  
Content-Length: 388  
  
{  
    "body": "function (personToGreet) {\r\n    var context = getContext();\r\n    var response = context.getResponse();\r\n\r\n    response.setBody(\"Hello, \" + personToGreet);\r\n}",  
    "id": "sproc_hello_world",  
    "_rid": "Sl8fALN4sw4DAAAAAAAAgA==",  
    "_ts": 1449684031,  
    "_self": "dbs\/Sl8fAA==\/colls\/Sl8fALN4sw4=\/sprocs\/Sl8fALN4sw4DAAAAAAAAgA==\/",  
    "_etag": "\"0600b5e2-0000-0000-0000-56686c3f0000\""  
}  
  

参照