Замена хранимой процедуры
Выполнение операции PUT для определенного ресурса хранимой процедуры заменяет весь ресурс хранимой процедуры. Все настраиваемые пользователем свойства, включая идентификатор и текст, должны быть отправлены в тексте для выполнения замены.
Запрос
Метод | Универсальный код ресурса (URI) запроса | Описание |
---|---|---|
PUT | https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/sprocs/{sproc-name} | {databaseaccount} — это имя учетной записи Azure Cosmos DB, созданной в вашей подписке. Значение {db-id} — это созданное пользователем имя или идентификатор базы данных, в которой заменяется хранимая процедура, а не системный идентификатор (rid). Значение {coll-id} — это имя коллекции, в которой заменяется хранимая процедура. Значение {sproc-name} — это имя заменяемой хранимой процедуры. |
Заголовки
Заголовки, используемые всеми запросами Cosmos DB, см. в статье Общие заголовки запросов REST Azure Cosmos DB .
Текст
Свойство | Обязательно | Тип | Описание |
---|---|---|---|
идентификатор | Обязательно | Строка | Пользователь создал уникальное имя хранимой процедуры. Две хранимые процедуры не могут иметь одинаковые идентификаторы. Это строка, которая не должна содержать более 255 символов. |
body | Обязательно | Строка | Текст хранимой процедуры. |
{
"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, см. в статье Общие заголовки ответов REST Azure Cosmos DB .
Коды состояния
В таблице ниже указаны стандартные коды состояния, возвращаемые этой операцией. Полный список кодов состояния см. в разделе Коды состояния HTTP.
Код состояния HTTP | Описание |
---|---|
200 (ОК) | Операция замены прошла успешно. |
400 — недопустимый запрос | Недопустимый текст JSON. Проверьте наличие фигурных скобок и кавычек. |
404 — не найдено | Заменяемая хранимая процедура больше не является ресурсом, то есть хранимая процедура была удалена. |
409. Конфликт | Идентификатор, указанный для хранимой процедуры, был взят существующей хранимой процедурой. |
Текст
Свойство | Описание |
---|---|
_Избавить | Это свойство, созданное системой. Идентификатор ресурса (_rid) — это уникальный идентификатор, который также является иерархическим для стека ресурсов в модели ресурсов. Он используется системой для размещения и перемещения по ресурсам разрешения. |
_Ts | Это свойство, созданное системой. Оно представляет метку времени последнего обновления ресурса. Значение — метка времени. |
_Самостоятельно | Это свойство, созданное системой. Это уникальный адресуемый URI для ресурса. |
_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\""
}