Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
GÄLLER FÖR:  NoSQL
Azure Cosmos DB for NoSQL stöder frågor med parametrar som uttrycks av den välbekanta @-notationen. Parameteriserad SQL ger robust hantering och undsättning av användarindata och förhindrar oavsiktlig exponering av data via SQL-inmatning.
Exempel
Du kan till exempel skriva en fråga som tar upperPriceLimit som en parameter och köra den för olika värden price baserat på användarindata.
SELECT
    *
FROM
    p
WHERE
    (NOT p.onSale) AND
    (p.price BETWEEN 0 AND @upperPriceLimit)
Du kan sedan skicka den här begäran till Azure Cosmos DB för NoSQL som ett parametriserat JSON-frågeobjekt.
{
  "query": "SELECT * FROM p WHERE (NOT p.onSale) AND (p.price BETWEEN 0 AND @upperPriceLimit)",
  "parameters": [
    {
      "name": "@upperPriceLimit",
      "value": 100
    }
  ]
}
I nästa exempel anges TOP argumentet med en parametriserad fråga:
{
  "query": "SELECT TOP @pageSize * FROM products",
  "parameters": [
    {
      "name": "@pageSize",
      "value": 10
    }
  ]
}
Parametervärden kan vara valfri giltig JSON: strängar, tal, booleska värden, null, till och med matriser eller kapslad JSON. Eftersom Azure Cosmos DB för NoSQL är schemalös verifieras inte parametrar mot någon typ.
Här är exempel på parametriserade frågor i varje Azure Cosmos DB för NoSQL SDK: