2011-11-03 220 views
2

我正在爲我的客戶端構建BI儀表板。我們的數據存儲在分析服務器多維數據集中。總體而言,事情很好,但是smartalec測試人員決定創建一個名字爲'〜!@#$%^ & *()_ + - = [] {} |;':「<> ?,。/作爲查詢結果的一部分顯示出來很好,但如果用戶試圖鑽入商家,我們當然會炸燬B/C,\ {; [「都是MDX的一部分。有沒有辦法逃避這些角色?我試着在前面放一個\,或者把角色加倍。我搜遍了所有東西,但沒有發現任何東西。轉義MDX查詢中的特殊字符

TIA

回答

5

您必須對您的名稱使用[]符號,並且只轉義右括號。這裏是一個例子,聲明一個計算出的度量名稱以逃避(注意)]:):

with member [`[email protected]#$%^&*()_+-=[]]{}|;':"<>?,./] as 42 
select [`[email protected]#$%^&*()_+-=[]]{}|;':"<>?,./] on 0 from [cube] 
0

您可以嘗試使用[]方括號嗎?我認爲這應該有所幫助。但是你也應該「跳過」你自己的括號。

MSDN

如果標識符的主體僅包含左括號([),則不需要 額外的處理。如果標識符 的主體包含右括號(]),則必須指定兩個右括號 (]])。