Criar Procedimento Armazenado
A Create Stored Procedure
operação cria um novo procedimento armazenado numa coleção.
Pedir
Método | URI do pedido | Description |
---|---|---|
POST | https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/sprocs | A {databaseaccount} é o nome da conta do Azure Cosmos DB criada na sua subscrição. O valor {db-id} é o nome/ID gerado pelo utilizador da base de dados onde o procedimento armazenado é criado e não o ID gerado pelo sistema (rid). O valor {coll-id} é o nome da coleção onde o procedimento armazenado é criado. |
Cabeçalhos
Veja Common Azure Cosmos DB REST request headers for headers that are used by all Azure Cosmos DB requests (Cabeçalhos de pedido REST do Azure Cosmos DB comuns para cabeçalhos que são utilizados por todos os pedidos do Azure Cosmos DB).
Corpo
Propriedade | Necessário | Tipo | Description |
---|---|---|---|
id | Necessário | String | O utilizador gerou um nome exclusivo para o procedimento armazenado. Nenhum dos dois procedimentos armazenados pode ter os mesmos IDs. É uma cadeia que não pode ter mais de 255 carateres. |
corpo | Necessário | String | O corpo do procedimento armazenado. |
{
"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"
}
Resposta
Cabeçalhos
Veja Common Azure Cosmos DB REST response headers for headers that are returned by all Azure Cosmos DB responses (Cabeçalhos de resposta REST do Azure Cosmos DB comuns para cabeçalhos devolvidos por todas as respostas do Azure Cosmos DB).
Códigos de estado
A tabela seguinte lista os códigos de estado comuns devolvidos por esta operação. Para obter uma lista completa dos códigos de estado, veja Códigos de Estado HTTP.
Código de estado de HTTP | Descrição |
---|---|
201 Criado | A operação foi efetuada com êxito. |
400 Pedido Incorreto | O corpo JSON é inválido. Verifique se existem parênteses ou aspas curvas em falta. |
409 Conflito | O ID fornecido para o novo procedimento armazenado foi tomado por um procedimento armazenado existente. |
Corpo
Propriedade | Descrição |
---|---|
_rid | É uma propriedade gerada pelo sistema. O ID do recurso (_rid) é um identificador exclusivo que também é hierárquico de acordo com a pilha de recursos no modelo de recursos. É utilizado internamente para colocação e navegação do recurso de permissão. |
_ts | É uma propriedade gerada pelo sistema. Especifica o último carimbo de data/hora atualizado do recurso. O valor é um carimbo de data/hora. |
_self | É uma propriedade gerada pelo sistema. É o URI endereçável exclusivo para o recurso. |
_etag | É uma propriedade gerada pelo sistema que representa a etag de recursos necessária para o controlo de simultaneidade otimista. |
{
"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\""
}
Exemplo
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\""
}