Partager via


Créer une procédure stockée

L’opération Create Stored Procedure crée une procédure stockée dans une collection.

Requête

Méthode URI de demande Description
POST https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/sprocs {databaseaccount} est le nom du compte Azure Cosmos DB créé dans le cadre de votre abonnement. La valeur {db-id} est le nom/l’ID généré par l’utilisateur de la base de données où la procédure stockée est créée, et non l’ID généré par le système (rid). La valeur {coll-id} est le nom de la collection dans laquelle la procédure stockée est créée.

En-têtes

Consultez En-têtes de requête REST Azure Cosmos DB communs pour les en-têtes utilisés par toutes les requêtes Azure Cosmos DB.

body

Propriété Obligatoire Type Description
id Obligatoire String Nom unique généré par l’utilisateur pour la procédure stockée. Deux procédures stockées ne peuvent pas avoir les mêmes ID. Il s’agit d’une chaîne qui ne doit pas comporter plus de 255 caractères.
body Obligatoire String Corps de la procédure stockée.
{  
    "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"  
}  
  

response

En-têtes

Consultez En-têtes de réponse REST Azure Cosmos DB courants pour les en-têtes retournés par toutes les réponses Azure Cosmos DB.

Codes d’état

Le tableau suivant répertorie les codes d'état courants renvoyés par cette opération. Pour obtenir la liste complète des codes status, consultez Codes d’état HTTP.

Code d'état HTTP Description
201 Créé L'opération a réussi.
400 Demande incorrecte Le corps au format JSON n'est pas valide. Vérifiez qu'il ne manque pas d'accolades ou de guillemets.
409 Conflit L’ID fourni pour la nouvelle procédure stockée a été pris par une procédure stockée existante.

body

Propriété Description
_Débarrasser Il s’agit d’une propriété générée par le système. L’ID de ressource (_rid) est un identificateur unique qui est également hiérarchique en fonction de la pile de ressources sur le modèle de ressource. Il est utilisé en interne pour le positionnement et la navigation dans la ressource d'autorisation.
_Ts Il s’agit d’une propriété générée par le système. Elle spécifie l'horodateur de la dernière mise à jour de la ressource. La valeur est un horodateur.
_self Il s’agit d’une propriété générée par le système. Il s'agit de l'URI adressable unique pour la ressource.
_Etag Il s’agit d’une propriété générée par le système qui représente l’etag de ressource requis pour le contrôle d’accès concurrentiel optimiste.
{  
    "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\""  
}  
  

Exemple

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\""  
}  
  

Voir aussi