我一直在一个脚本,将交换两个ID圆这是主键:报告服务存储procedues
CREATE PROCEDURE dbo.ID
@OldName NVARCHAR(128),
@NewName NVARCHAR(128)
AS
DECLARE @NewId INT, @OldId INT
CREATE TABLE TmpTable (ID INT, Name NVARCHAR(128))
INSERT INTO TmpTable (Name,ID)
VALUES (@NewName, (SELECT ID FROM Table1 WHERE [Name] = @NewName));
INSERT INTO TmpTable (Name,ID)
VALUES(@OldName, (SELECT ID FROM Table1 WHERE [Name] = @OldName))
UPDATE Table1
SET ID = (SELECT MAX(ID) + 1000 FROM Table1)
WHERE [NAME] = @NewName
UPDATE Table1
SET ID = (SELECT MAX(ID) + 2000 FROM Table1)
WHERE [NAME] = @OldName
UPDATE Table1
SET ID = (SELECT ID FROM TmpTable WHERE Name = @NewName)
WHERE [Name] = @OldName
UPDATE Table1
SET ID = (SELECT ID FROM TmpTable WHERE Name = @OldName)
WHERE [Name] = @NewName
DROP TABLE TmpTable
go
什么我现在要做的是运行本作中,报告服务,其中报告NewNAme和OldNAme将从查询Table1表的下拉框中选择。目前,当我尝试导入此代码时,它会要求输入值。
- 如何将存储过程导入报表。
- 如何获取下拉框来查询列[Name]。