Partager via


Remplacer une procédure stockée

L’exécution d’une opération PUT sur une ressource de procédure stockée spécifique remplace la totalité de la ressource de procédure stockée. Toutes les propriétés paramétrables par l’utilisateur, y compris l’ID et le corps, doivent être envoyées dans le corps pour effectuer le remplacement.

Requête

Méthode URI de demande Description
PUT https://{databaseaccount}.documents.azure.com/dbs/{db-id}/colls/{coll-id}/sprocs/{sproc-name} {databaseaccount} est le nom du compte Azure Cosmos DB créé dans le cadre de votre abonnement. La valeur {db-id} est le nom/id généré par l’utilisateur de la base de données où la procédure stockée est remplacé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 remplacée. La valeur {sproc-name} est le nom de la procédure stockée à remplacer.

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

response

En-têtes

Consultez En-têtes de réponse REST Azure Cosmos DB communs pour les en-têtes retournés par toutes les réponses 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
200 Ok L'opération de remplacement 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.
404 Introuvable La procédure stockée à remplacer n’est plus une ressource, c’est-à-dire que la procédure stockée a été supprimée.
409 Conflit L’ID fourni pour la 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 (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\""  
}  
  

Exemple

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

Voir aussi