簡體   English   中英

INSERT INTO @Temp_Table VALUES 從多值 SSRS 參數

[英]INSERT INTO @Temp_Table VALUES from multi value SSRS Parameter

我正在使用 ssrs 報告生成器構建報告,其中在代碼中有一部分我必須將一些值插入到臨時表中。 這些值應該從多值參數 DatabaseName 加載。 我嘗試了以下代碼:

DECLARE @Rep_Temp TABLE(SurrogateKeyIDENTITY int not null IDENTITY (1,1),tempDBName nvarchar(100) NOT NULL);
INSERT INTO @Rep_Temp (tempDBName) VALUES (@DatabaseName);

只有當我選擇一個值時它才有效,當我選擇多個值時它會出錯。

我也嘗試了以下代碼但沒有成功:

INSERT INTO @Rep_Temp (tempDBName) VALUES (join(Parameters!DatabaseName.Value,","));

感謝您的幫助。

此致,

我按照以下方法解決:

  1. 我在數據集中添加了參數: @DBNameString = join(Parameters!DatabaseName.Value,",")
  2. 我在插入表時嘗試使用 STRING_SPLIT 但我不能,因為我有 SQL Server 2012“不是公認的內置函數名稱”。 相反,我做了以下事情:

聲明@Rep_Temp TABLE(SurrogateKeyIDENTITY int not null IDENTITY (1,1),tempDBName nvarchar(100) NOT NULL);

DECLARE @DBs VARCHAR(500);
DECLARE @DBName VARCHAR(500);
DECLARE @charSpliter CHAR;

SET @charSpliter = ','
SET @DBs = @DBNameString + @charSpliter;

WHILE CHARINDEX(@charSpliter, @DBs) > 0
BEGIN
SET @DBName = SUBSTRING(@DBs, 0, CHARINDEX(@charSpliter, @DBs))
SET @DBs = SUBSTRING(@DBs, CHARINDEX(@charSpliter, @DBs) + 1, LEN(@DBs))

INSERT INTO @Rep_Temp (tempDBName) VALUES (@DBName);    
END 

此致,

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM