我有這樣的資料庫結構:
"selfId": "cd29433e-f36b-1410-851b-009d805073d7",
"selfName" : "A",
"bookIds": [
"2f51bfd4",
"2f3a1010",
"090436c0",
"1078c3b2",
"b63b06e0"
]
我在 C# 中作業并將 bookId 作為字串。我將查詢寫為:
string SQLquery = string.Format("select c.selfName from c where ARRAY_CONTAINS(c.bookIds,\"" bookId "\"");
但是當 bookId 包含特殊字符時,查詢會出錯。例如,如果 bookId = "AK"s" book" (請注意 id 本身包含 ") ,則執行 sqlQuery 會出錯。
uj5u.com熱心網友回復:
當文本包含引號、斜杠、特殊字符時,可以使用轉義序列

帶引號的屬性運算子 [""] 也可用于訪問屬性。例如,SELECT food.id 和 SELECT food["id"] 是相等的。此語法可用于對帶有空格、特殊字符或與 SQL 關鍵字或保留術語相同的名稱的屬性進行轉義。
例子:
SELECT food["id"]
FROM food
WHERE food["foodGroup"] = "Snacks" and food["id"] = "19015"
參考:- https://docs.microsoft.com/en-us/azure/cosmos-db/sql/sql-query-constants#bk_arguments
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/478701.html
