Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Cosmos DB (di Azure dan Fabric) mendukung kueri dengan parameter yang dinyatakan oleh notasi @ yang familier. SQL berparameter menyediakan penanganan dan pelepasan input pengguna yang kuat, dan mencegah paparan data yang tidak disengaja melalui injeksi SQL.
Examples
Misalnya, Anda dapat menulis kueri yang mengambil upperPriceLimit sebagai parameter, dan menjalankannya untuk berbagai nilai price berdasarkan input pengguna.
SELECT
*
FROM
p
WHERE
(NOT p.onSale) AND
(p.price BETWEEN 0 AND @upperPriceLimit)
Anda kemudian dapat mengirim permintaan ini ke Cosmos DB sebagai objek kueri JSON berparameter.
{
"query": "SELECT * FROM p WHERE (NOT p.onSale) AND (p.price BETWEEN 0 AND @upperPriceLimit)",
"parameters": [
{
"name": "@upperPriceLimit",
"value": 100
}
]
}
Contoh berikutnya ini mengatur TOP argumen dengan kueri berparameter:
{
"query": "SELECT TOP @pageSize * FROM products",
"parameters": [
{
"name": "@pageSize",
"value": 10
}
]
}
Nilai parameter dapat berupa JSON yang valid: string, angka, boolean, null, bahkan array atau JSON berlapis. Karena Cosmos DB tidak memiliki skema, parameter tidak divalidasi terhadap jenis apa pun.
Berikut adalah contoh untuk kueri berparameter di setiap Cosmos DB SDK: