1
是否可以根據參數更改Reporting Services中的查詢?根據SQL Reporting Services中的參數編輯查詢
我希望能夠更改從tableName到tableName2(例如)在查詢中的表名稱。
是否可以根據參數更改Reporting Services中的查詢?根據SQL Reporting Services中的參數編輯查詢
我希望能夠更改從tableName到tableName2(例如)在查詢中的表名稱。
有兩種方法,你可以做到這一點:
切換對於1,你會這樣做:
if @param = 'value'
select Col1, Col2 from Table1
else
select Col1, Col2 from Table2
對於2,你會做這樣的事情:
declare @sql nvarchar(4000)
select @sql = 'select Col1, Col2 from' + (case when @param = 'value' then 'Table1' else 'Table2' end)
sp_executesql @sql
警告:要非常小心選擇2.如果選項1是可行的,那麼它是更安全的選擇,如動態地構建基於用戶提供的值SQL始終是一個危險的戀情。雖然這個特殊的例子並沒有直接在SQL中使用這個參數,但是編寫這樣的東西很容易,因此很容易找到利用它的方法。